使用jQuery禁用动态id按钮
disable dynamic id buttons with jQuery
我使用VB。Net, MVC 5, razor和jQuery。我有一个剃刀视图,创建按钮,我试图禁用用户点击。我通常使用jQuery完成这个任务:
$('#id').prop("disabled", true);
我的任务对我来说是新的,因为我的按钮是这样生成的:
@For i As Integer = 0 To Model.hrmnValues.Count - 1
@<div class="col-md-3">
<a class="btn btn-primary btn-md" href="#" id="@Model.inventoryCategoryAttIDs(i)"
onclick="acceptChange('@Model.hrmnValues(i)',
@Model.inventoryCategoryAttIDs(i), @Model.uniqueItemID)">Accept Change</a>
</div>
Next
我的onClick
函数类似于:
function acceptChange(newValue, categoryAttID, itemID) {
$('#categoryAttID').prop("disabled", true);
}
这显然不起作用,因为它正在寻找名称为categoryAttID的id
。我还尝试将categoryAttID放入它自己的变量中,像这样:
var idToDisable = "#" + categoryAttID;
,然后把idToDisable
到jQuery调用禁用按钮,这不起作用。
在这种情况下,我如何禁用被点击的按钮?
在这个页面上会有多个按钮使用这个函数,这个函数实际上执行一个ajax调用。这个想法是限制用户对每个按钮执行一个ajax调用。
html是这样呈现的:
<div class="row">
<div class="col-md-3">
<font>First Name</font>
</div>
<div class="col-md-3">
<font>John</font>
</div>
<div class="col-md-3">
<font>No Record Found</font>
</div>
<div class="col-md-3">
<a class="btn btn-primary btn-md" href="#" id="2"
onclick="acceptChange('CHRISTOPHER', 2, 0)">Accept Change</a>
</div>
</div>
<div class="row">
<div class="col-md-3">
<font>Last Name</font>
</div>
<div class="col-md-3">
<font>MURRAY</font>
</div>
<div class="col-md-3">
<font>No Record Found</font>
</div>
<div class="col-md-3">
<a class="btn btn-primary btn-md" href="#" id="3"
onclick="acceptChange('MURRAY', 3, 0)">Accept Change</a>
</div>
您已经将按钮的id
传递给您的函数作为第二个参数-
acceptChange (@Model.hrmnValues (i), @Model.inventoryCategoryAttIDs (i), @Model.uniqueItemID)
你可以把函数改成-
function acceptChange(newValue, categoryAttID, itemID) {
$('#' + categoryAttID).prop("disabled", true);
}
另外,链接没有禁用属性(参见- Mozilla Developer Network),如果你想在点击时禁用元素,请尝试使用按钮。
既然你在更改按钮链接后使用了bootstrap,那么你可能需要将函数更改为-
function acceptChange(newValue, categoryAttID, itemID) {
$('#' + categoryAttID).prop("disabled", true);
$('#' + categoryAttID).addClass("disabled");
}
相关文章:
- 如何根据单击的按钮发送id参数
- JavaScript-onClick将按钮ID或单击按钮的文本传递给函数
- 传递来自<输入类型=“;文件“;id=“;文件“/>尽管还有一个按钮点击
- Jquery单击按钮上没有类或id的事件
- 我们可以设置属性'id'到不同的'按钮'通过使用javascript或jquery的循环
- jQuery:如何查找id是动态生成的单选按钮是否被选中
- Javascript尽管ID不同,但只有第一个按钮提交给Ajax表单
- 按下按钮时JqGrid会给出ID
- 如何使用顺序ID禁用多个单选按钮
- 在 PHP 生成的表中添加和访问按钮 ID
- 如何在jQuery的.on()方法中动态更新按钮的ID选择器
- 如何从按钮列表中获取按钮的 ID
- 单击按钮时,我如何将li的id添加为1
- 页面的类似facebook按钮的应用程序id
- 使用JQuery按钮更改URL#ID
- 如何选择并单击没有 id 属性的按钮
- 选中没有ID的单选按钮,只有名称、类型和值
- 在javascript循环中创建唯一的Id按钮
- 如何通过[id*=“按钮名称”]聚焦按钮
- 使用jQuery禁用动态id按钮