在表单中插入输入元素的属性值

Insert the attribute value of input element in form

本文关键字:属性 元素 输入 表单 插入      更新时间:2023-09-26

我有一个没有idclass的表单。我需要为输入元素插入属性值。

<form>
    <tr><td><input type="text" name="x"/></td></tr>
    <tr><td><input type="text" name="y"/></td></tr>
    <tr><td><input type="text" name="z"/></td></tr>
</form>

这是我尝试过的jquery:

var x = $('form').find('input').first().val("some_value");
var y = $('form').find('input').second().val("some_value");
var z = $('form').find('input').third().val("some_value");

//有没有别的办法?

var x  = $("form").find('input[name="x"]').val("some_value");

您可以使用Attribute Equals Selector [name= " value "]来唯一标识输入

$('input[name=x]').val("some_value1");
$('input[name=y]').val("some_value2");
$('input[name=z]').val("some_value3");

虽然我不会推荐你用来给输入赋值的方法,但我建议你使用一次find(),并使用返回的对象集合来赋值。这将减少处理时间并提高性能。

var all = $('form').find('input');
all.eq(0).val("some_value1");
all.eq(1).val("some_value2");
all.eq(2).val("some_value3");

可以使用

$("form").find('input[type="text"]]').each(function() {
    $(this).attr("your attribute", "your value");
});

try with this

var x  = $('form input[name="x"]').val("some_value_x");

//所以你可以在整个表单中搜索所有的输入元素,然后迭代应用属性。

 var allInputElements = $("form input[type='text']");
   $.each(allInputElements,function(index, item){
       $(item).attr("disabled","true");      
      // You can also use item.prop("any property or attribute","value");
   });

如果您要给它们所有相同的值,就像您的问题中出现的那样,您可以简单地将它们全部选中:

$("form input").val("some_value");