1
通常,我有一個表或一個列表,並且我想在單擊給定行時創建一個事件,並執行特定於點擊行的操作。爲此,我一直在click()中定義data()。有時我只發送一段數據,其他時間我發送整行。將數據傳遞給jQuery-UI對話框
我是這樣做的最好方式,還是有更好的方法?把所需的數據發送到對話框,還是發送整個對象(例如,在我的情況下是行),並在對話框中提取數據,最好?
感謝
$("#someTable tbody").on("click", "a.doIt", function() {
$("#dialog").data('id',$(this).parent().parent().attr('data-id')).dialog("open");
//$("#dialog").data('id',$(this).parent().parent()).dialog("open");
return false;
});
$("#dialog").dialog({
open : function() {
alert($(this).data('id')+' is available.');
//alert($(this).data('row').attr('data-id')+' is available.');
},
buttons : [
{
text : 'CLOSE',
"class" : 'gray',
click : function() {
alert($(this).data('id')+' is available.');
//alert($(this).data('row').attr('data-id')+' is available.');
$(this).dialog("close");
}
}
]
});
<table id="someTable">
<tbody>
<tr data-id="123"><td><a href="javascript:void(0)" class="doIt">aaa</a></td><td>bbb</td></tr>
<tr data-id="321"><td><a href="javascript:void(0)" class="doIt">ccc</a></td><td>ddd</td></tr>
<tr data-id="111"><td><a href="javascript:void(0)" class="doIt">eee</a></td><td>fff</td></tr>
</tbody>
</table>
正確代碼是否工作? –
@AndrewPeacock。是。但是如果有這樣一種事實上的標準方式,我想這樣做。 – user1032531
我只問,因爲我標記這將被移動到codereview.stackexchange.com這是這個問題的更好的地方。 –