javascript - 怎么實(shí)現(xiàn)點(diǎn)擊表格中的某一行然后就在表單處出現(xiàn)表格中的對(duì)應(yīng)的屬性值啊
問題描述
如上圖,,怎么實(shí)現(xiàn)點(diǎn)擊表格中的某一行然后就在2處出現(xiàn)表格中的對(duì)應(yīng)的屬性值啊。。
表格哪一部分是這樣生成的
問題解答
回答1:委托
$('#list').click(function (e) { e = e || window.event; //拿到鼠標(biāo)點(diǎn)擊的節(jié)點(diǎn)對(duì)象 var target = e.target || e.srcElement; //判斷所屬哪行tr var tr; $(this).find(’tr’).each(function () {if (this.contains(target)) { tr = this; return false;} }); //拿到了tr if (tr) {//這里面就可以取行tr的值項(xiàng),//建議在構(gòu)html的時(shí)候:'<tr data-C_name=’你對(duì)應(yīng)的值’ data-four=’’ ... ><td>..</td>...</tr>'//取值:$(tr).attr(’data-C_name’),$(tr).attr(’data-four’)$(tr) }});
用委托可以不用考慮里面的對(duì)象是異步加載
回答2:表格的tr綁定點(diǎn)擊事件,點(diǎn)擊的時(shí)候獲取表單所需要的值,依次填入就好了。
回答3:你可以在生成表格的時(shí)候把所有數(shù)據(jù)請(qǐng)求回來, 通過data-* 放在tr上面 ,再給tr綁定點(diǎn)擊事件,點(diǎn)擊的時(shí)候就把tr上面的數(shù)據(jù)填到相應(yīng)的地方,這樣可以減少請(qǐng)求次數(shù)(移動(dòng)端做多了的后遺癥哈哈回答4:
循環(huán)點(diǎn)擊獲取每一行的屬性,然后把屬性寫到圖2,input相對(duì)應(yīng)的value中
回答5:$('table tr').on('click',function () { console.log($(this).find('td').eq(0).text()); console.log($(this).find('td').eq(1).text()); console.log($(this).find('td').eq(2).text());});
相關(guān)文章:
1. css - 關(guān)于div自適應(yīng)問題,大家看圖吧,說不清2. python - django如何每次調(diào)用標(biāo)簽的時(shí)候都取隨機(jī)數(shù)據(jù)3. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””4. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?5. docker-machine添加一個(gè)已有的docker主機(jī)問題6. mysql - msyql 判斷字段不為空 簡(jiǎn)單方法7. html5 - vue 里的Elemen UI的時(shí)間怎么轉(zhuǎn)化為時(shí)間戳嗎8. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。9. javascript - Vue 自定義控件v-model雙向綁定10. linux - mysql源碼安裝遇到的問題
