Jquery使用循环更改属性

时间:2014-10-24 05:33:23

标签: jquery each attr

如果我有以下变量:

var ordercode, ordername, order1price, orderfree;

如何使用'每个'

将这些变量的值添加到attr [value]
<form>
   <input type="hidden" name="ordercode" value="">
   <input type="hidden" name="ordername" value="">
   <input type="hidden" name="order1price" value="">
   <input type="hidden" name="orderfree" value="">
</form>

像:

$('form input').each(function {
    value = ordercode where name = ordercode
})

谢谢!

5 个答案:

答案 0 :(得分:2)

你无法访问那样的变量......

您可以做的是创建一个对象,将这些输入名称作为键,如

var obj = {
  ordercode: 'ordercode',
  ordername: 'ordername',
  order1price: 'order1price',
  orderfree: undefined
}
$('form input').val(function() {
  return obj[this.name];
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form>
  <input type="text" name="ordercode" value="">
  <input type="text" name="ordername" value="">
  <input type="text" name="order1price" value="">
  <input type="text" name="orderfree" value="">
</form>

答案 1 :(得分:0)

容易做到:

$('form input').each(function {
    $(this).val($(this).attr('name'));
});

享受!

答案 2 :(得分:0)

$('form input').each(function() {
    if (this.name == 'ordercode'){
        this.value = 'ordercode';
    }
});

答案 3 :(得分:0)

使用此关键字

value=$(this).val();

答案 4 :(得分:0)

如果您想更改特定输入的值,请像这样使用

$("input[name='ordercode']").val("new value");