javascript - 单击按钮禁用特定的表单字段

标签 javascript php jquery html

<分区>

我必须禁用按钮点击时的特定字段,例如我的页面中有两个这样的表单

< form method='post' action='' class='myform'>
<input type='text' name='name_0'>
<input type='email' name='email_0'>
<input  class='btn' type='submit'>
</form>

< form method='post' action='' class='myform'>
<input type='text' name='name_1'>
<input type='email' name='email_1'>
<input  class='btn' type='submit'>
</form>

使用 jquery 我可以像这样禁用所有字段

$(document).ready(function(){                            
    $('.btn').click(function(){
        $("input").prop('disabled', true);
    });
});

但是当我第一次提交按钮时,我不知道如何定位特定字段,如 name_0、email_0,请帮我解决这个问题

最佳答案

要禁用它们,您可以使用属性选择器:

$("input[name='name_0']").prop('disabled', true);

jQuery Attribute Selectors

如果您有多个项目,您可以将它们组合起来:

$("input[name='name_0'],input[name='email_0']").prop('disabled', true);

您更大的问题是您试图通过单击带有类的内容来确定表单。为了缩小范围,您可以进行一些 DOM 遍历:

$(document).on('click', '.btn', function(event) {
    // which form? this one!
    var currentForm = $(this).closest('form');
    // disable all inputs for this form
    currentForm.find('input').prop('disabled', true);
});

现在我不必知道要禁用哪些输入(如果我想禁用所有输入)。我只需要在我的按钮表单中找到输入即可。

关于javascript - 单击按钮禁用特定的表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34322311/

相关文章:

javascript - Symfony|Twig : update data after ajax call

javascript - AngularJS:如何在服务中完成 AJAX 调用后执行 Controller 功能?

javascript - Onedrive api 如何附加文件而不是下载?

javascript - 单击单选按钮时输入不会消失

javascript - d3.js:折线图的 xaxis 标签显示为粗体

php 文件无法加载存在于另一个目录中的 css 或 javascript 文件

php - elasticsearch排序根本不起作用

javascript - 使选项卡正确对齐

php - lessphp 加载文件 LESS 时出错

javascript - 传递动态名称选择器不起作用