我有一个由多行组成的表,每行包含第一列中的单选按钮,如下所示:
<table class="table table-condensed span8" id="AllocationTable">
<thead>
<tr>
<th title="Entity to Allocate" style="width: 30%">Entity</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.EntityAllocations)
{
<tr>
<td>
<input type="radio" name="radio" id="@item.ID" class="EntityRadioSelect" value="@item.ID" onclick="EntitySelect(this)" disabled="disabled" >
</td>
</tr>
}
</tbody>
</table>
现在我要捕获最后点击的单选按钮的ID 我尝试过这样的事情
function EntitySelect(select) {
if ($(select).parent().data("lastClicked")){
alert($(select).parent().data("lastClicked"));
}
$(select).parent().data("lastClicked", select.id);
}
但是我得到了错误的值,因为它给了我当前的价值,有时其他价值也被接受了。
答案 0 :(得分:1)
var clicked='';
var preClicked='';
$("#AllocationTable").on("click",".EntityRadioSelect",function(){
preClicked=clicked;
clicked=$(this).attr("id");
});
删除onclick =“EntitySelect(this)”
答案 1 :(得分:0)
试试这个:
function EntitySelect(select) {
var parent=$(select).parents('#AllocationTable');
if (parent.data("lastClicked")){
alert(parent.data("lastClicked"));
}
parent.data("lastClicked", select.id);
}