之前一直從事C/S的開發(fā),關(guān)于B/S用到的一些技術(shù)是不熟悉的,現(xiàn)在在逐步學習中,希望通過及時總結(jié)加強理解和記憶。目前開發(fā)的系統(tǒng)使用的主要是JQuery、Stuts2、Spring。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比威寧網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式威寧網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋威寧地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。
關(guān)于自由流后端及Jbpm的實現(xiàn)我會在另一篇博文中介紹,這里只介紹我在前端使用html及JQuery中遇到的問題以及對我來說不常使用的知識點。
1.關(guān)于Map以及JsonObject
在后端使用Map數(shù)據(jù)結(jié)構(gòu)將工作任務節(jié)點名稱與審批人列出(排除了會簽的情況),即以節(jié)點名稱為key,審批人為value,如下:
for(ProcessTaskEntity task : processTaskList){ map.put(task.getActivityName(), task.getCreateUserCode()); } taskVo.setActivityUserMap(map);
activityUserMap這個屬性是Map類型,傳到前端后我希望遍歷這個Map類型的數(shù)據(jù),分別取到其key和value。Map類型的在前端其value={a=b,c=d,e=f},在前端使用foreach進行遍歷的時候?qū)⑵涞韧谝话阕址谝晃皇莧,第二位是a,以此類推。這并不符合我們使用Map類型的初衷。
所以我們使用了JsonObject類型聲明activityUserMap,上面的代碼不需要做任何修改,即可得到一個JsonObject的activityUserMap,在前端使用如下方法遍歷:
var activityUserMap = ${taskVo.activityUserMap}; $.each(activityUserMap, function(key, value) { var temp= "<option value='" + key + "'>" + key + "</option>"; $('select[name="activityNameChoose"]').append(temp); });
這段代碼,如果是純Java的,是簡單清晰的。但用Js來寫,有好多曲折:
1.用JQuery獲得的控件不能再用.options.add()等方法;
2.$('select[name="activityNameChoose"]')后不能加[0];
3.Temp的內(nèi)容如果寫在append里會報undefined is not a function,原因不明。
2.取select選中值的問題
經(jīng)過試驗后的正確取值方法是
$("select[name='activityNameChoose']").val()
而不正確的取值方法
$("input[name='uidscb']:checked").val() $("input[name='uidscb']:checked").value $("select[name='activityNameChoose']").value;
另外,其他方法比如$("select[name='activityNameChoose']").options也無法獲得select的所有options選項。
3.$("input[name='XXX']:not(:checked)"):取得select未選中值的方法
關(guān)于使用JQuery操作select的詳細方法可以參看:jQuery select操作控制方法小結(jié)。另外關(guān)于JQuery的遍歷請查看$.each遍歷map、array。另外在解決上述問題的過程中還參考了JQuery的三種$的三種實現(xiàn)。
標題名稱:關(guān)于自由流功能開發(fā)過程中前端的一些問題匯總
文章源于:http://chinadenli.net/article36/giespg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計、微信小程序、、搜索引擎優(yōu)化、定制開發(fā)、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)