Javascript jquery-禁用按钮并使用动态名称输入
我有一个类似于此的表结构,但上面和下面有很多其他嵌套的东西。我需要禁用按钮和链接,或者可能更改按钮可见性,而不是禁用它 按钮ID和锚点名称为动态值10,如下所示,我已尽我所能从表中获取并禁用这些元素,但似乎没有任何效果:Javascript jquery-禁用按钮并使用动态名称输入,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个类似于此的表结构,但上面和下面有很多其他嵌套的东西。我需要禁用按钮和链接,或者可能更改按钮可见性,而不是禁用它 按钮ID和锚点名称为动态值10,如下所示,我已尽我所能从表中获取并禁用这些元素,但似乎没有任何效果: <tr> <td class="t-last"> <button id="btnEdit10" class="ui-state-active ui-corner-all button-outer" onclick="ClientValues
<tr>
<td class="t-last">
<button id="btnEdit10" class="ui-state-active ui-corner-all button-outer"
onclick="ClientValues(10);">Edit</button>
<a name="lnkDelete10" class="cursor_hand" onclick="DeleteIt(10,200);">
<u>Delete</u>
</a>
</td>
<tr>
<td class="t-last">
<button id="btnEdit17" class="ui-state-active ui-corner-all button-outer"
onclick="ClientValues(17);">Edit</button>
<a name="lnkDelete17" class="cursor_hand" onclick="DeleteIt(17,200);">
<u>Delete</u>
</a>
</td>
任何帮助都将不胜感激
编辑:我的问题不是很清楚。我试图禁用以btnEdit开头的每个按钮和以lnkDelete开头的每个链接 如果我能很好地理解,像这样的事情
$('#btnEdit' + dynamic_part).attr("disabled", disable);
$("[id^=btnEdit]").attr("disabled", disable);
更新:
您可以像这样选择所有以btnEdit开头的ID
$('#btnEdit' + dynamic_part).attr("disabled", disable);
$("[id^=btnEdit]").attr("disabled", disable);
如果你只是想禁用一个特定的按钮,那么你可以这样做
$('#btnEdit10').attr("disabled", disable);
否则,如果要禁用控制一组按钮,可以执行InTry所述的操作,并在选择器名称旁边设置一个变量
$('#btnEdit' + my_number).attr("disabled", disable);
并通过一些简单的编码将适当的数值存储到变量my_number中。要禁用以btnEdit开头的所有内容,请使用以下属性以选择器开头:
$('[id^="btnEdit"]').prop("disabled", true);
或两者皆适用:
$('[id^="btnEdit"], [id^="lnkDelete"]').prop("disabled", true);
编辑:
或者可能:
$('[id^="btnEdit"]').prop("disabled", true);
$('[id^="lnkDelete"]').attr("onclick", "");
使用道具比使用属性更好。但无论如何+1我搞不清楚的是如何得到动态的部分。它通常是一个数字,但我想用后面的任何东西来测试按钮:id=btnedit324939493394x。我怎样才能得到动态的部分?抱歉,我对jQuery非常陌生,非常感谢您的帮助。您从哪里获得该号码?您是否试图禁用所有以btnEdit开头的内容,或者仅以btnEdit10开头的内容,如果是,那么10从何而来?我正在尝试禁用所有以btnEdit开头的内容,或者,对于链接,以lnkDelete开头的内容。然后我想循环并禁用所有链接和按钮。这就是我想的,等待回复发布答案大概15分钟?看起来这些按钮属于jQueryUI,如果是的话,它们可能是动态的,这意味着它们在pageload上不存在。在将这些按钮添加到DOM之后,我下面的回答应该会起作用。您是对的,它们来自jQueryUI。今天我从你身上学到了很多东西——你真是太棒了。。。不知道你救了我多少!adeneo-您是否有更多关于jQueryUI上的链接以及它与DOM的交互和加载的信息?我现在正在做研究b/c它已经引起了其他问题。再次感谢!动态数字是我无法理解的。我如何才能禁用每个以btnEdit开头的按钮或以lnkDelete开头的链接?是的,adeneo是一个该死的救生圈!该按钮工作完美!但由于某些原因,链接没有被禁用。它以前只有'name'属性,所以我添加了一个相同的'id'属性,但它仍然不起作用。onclick事件仍然会触发。您不能真正禁用锚点,因为它没有disabled属性!我很确定你想做什么,但是如果你想禁用点击功能,你必须删除它。我会更新我的答案?哇,我真希望我能亲自感谢你!它工作完美无瑕@帕努文-没问题,很乐意帮忙!