最后点击的单选按钮ID

时间:2014-08-04 06:54:29

标签: javascript jquery asp.net asp.net-mvc-3 razor

我有一个由多行组成的表,每行包含第一列中的单选按钮,如下所示:

<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);
}

但是我得到了错误的值,因为它给了我当前的价值,有时其他价值也被接受了。

2 个答案:

答案 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); 
}