禁用按钮和输入动态名称
Disable Button and Input with dynamic names
我有一个类似的表结构,但是上面和下面有很多其他嵌套的东西。我需要禁用按钮和链接(或者可能改变按钮可见性,而不是禁用它?)。
按钮ID和锚名是动态的(值10,下面),我已经尝试了所有我能想到的从表中抓取这些元素并禁用,但似乎没有任何工作:
<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>
我猜正则表达式将是我最好的选择,但我仍然没有得到它的工作。这就是我试图使用禁用按钮,但我无法访问它:
$('btnEdit10').attr("disabled", true); //after looping to the control
任何帮助都将非常感激!
编辑:我的问题不是很清楚。我试图禁用以"btnEdit"开始的每个按钮和以"lnkDelete"开始的每个链接。如果我没理解错的话,像这样的东西
$('#btnEdit' + dynamic_part).attr("disabled", disable);
更新:您可以像这样选择所有以btnEdit
开头的id
$("[id^=btnEdit]").attr("disabled", disable);
禁用所有以"btnEdit"开头的属性,使用"attributes starts with" selector:
$('[id^="btnEdit"]').prop("disabled", true);
或同时使用:
$('[id^="btnEdit"], [id^="lnkDelete"]').prop("disabled", true);
编辑:或者:
$('[id^="btnEdit"]').prop("disabled", true);
$('[id^="lnkDelete"]').attr("onclick", "");
如果你只是想禁用一个特定的按钮,那么你可以这样做…
$('#btnEdit10').attr("disabled", disable);
否则,如果你想控制一组按钮禁用,你可以像InTry提到的那样,在选择器名称旁边设置一个变量…
$('#btnEdit' + my_number).attr("disabled", disable);
并通过一些简单的编码将适当的数字值存储到该变量(my_number)中。
相关文章:
- 无法在 jquery 中的单击事件上生成动态输入字段
- 将动态输入表单数据保存到数据库kendoui中
- 如何从动态输入字段添加数字
- 带有动态输入的嵌套ng重复
- 如何正确地将动态输入字段传递到另一个页面进行显示
- 所有输入字段的动态输入长度
- 在AJAX中获取两个动态输入的值
- 访问ember中的动态输入值#ember中每个块
- 附加jQuery的后动态输入
- 在动态输入数据的下拉菜单中设置默认值
- Javascript - 验证 onSumbit 动态输入
- 动态输入文件中未加载任何数据
- 以 Meteor JS 形式存储动态输入值
- 将动态输入索引到其他动态输入数组
- 如何在创建动态输入文件时获取相同输入类型的单独 ID
- 如何编辑此动态输入文本区域 javascription
- 用于动态输入的JavaScript和HTML表单
- 使用 jquery 验证动态输入字段
- 使用验证器插件 Jquery 验证动态输入表单元素
- 从 jquery 动态输入字段获取值