jquery 变量选择器问题
jquery variable selector issue
html:
<input id="input_1" type="text" value="some text"/>
<input id="input_2" type="text" value="some text"/>
js:
var input_1 = $('#input_1'),
input_2 = $('#input_2');
现在我需要删除这些值。所以我一个一个地删除了值。
示例:
input_1.value('');
input_2.value('');
但是我怎样才能在一行中删除这些变量值呢?
( 没有这个方法: input_1.value('').end().input_2.value(''); )
$("#input_1, #input_2").val('');
您想使用 add
方法。
input_1.add(input_2).val("");
你可以试试 jQuery each()
(https://api.jquery.com/each/)
$('input[id^='input_']').each(function( index ) {
$(this).val(''); // reset each element value
});
仅供参考
input[id^='input_']
选择器选择所有具有 id
属性且以 'input_'
开头的 input
元素,例如 input_1、input_2 等
如果您想清空多个元素的值,那么使用 class 选择器是您的一个选择。
像这样:
var input_vars = $(".elementClass");
input_vars.val("");
也许通过阵列?
var clearMe = ['input1', 'input2'];
for (i = 0; i < clearMe.length; i++) {
var thisClear = clearMe[i];
$('#'+thisClear).val('');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
与变量相同:
var clear1 = $('#input1');
var clear2 = $('#input2');
var clearMe = [clear1, clear2];
for (i = 0; i < clearMe.length; i++) {
clearMe[i].val('');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
或者..简单地说:
var clear = $('#input1, #input2');
clear.val('');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
向两个文本框元素添加一个通用 class,然后使用该 class 清除该值。
$(".class").value("");
对我有用。谢谢大家。
input_1.add(input_2).val("");
html:
<input id="input_1" type="text" value="some text"/>
<input id="input_2" type="text" value="some text"/>
js:
var input_1 = $('#input_1'),
input_2 = $('#input_2');
现在我需要删除这些值。所以我一个一个地删除了值。 示例:
input_1.value('');
input_2.value('');
但是我怎样才能在一行中删除这些变量值呢? ( 没有这个方法: input_1.value('').end().input_2.value(''); )
$("#input_1, #input_2").val('');
您想使用 add
方法。
input_1.add(input_2).val("");
你可以试试 jQuery each()
(https://api.jquery.com/each/)
$('input[id^='input_']').each(function( index ) {
$(this).val(''); // reset each element value
});
仅供参考
input[id^='input_']
选择器选择所有具有 id
属性且以 'input_'
开头的 input
元素,例如 input_1、input_2 等
如果您想清空多个元素的值,那么使用 class 选择器是您的一个选择。 像这样:
var input_vars = $(".elementClass");
input_vars.val("");
也许通过阵列?
var clearMe = ['input1', 'input2'];
for (i = 0; i < clearMe.length; i++) {
var thisClear = clearMe[i];
$('#'+thisClear).val('');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
与变量相同:
var clear1 = $('#input1');
var clear2 = $('#input2');
var clearMe = [clear1, clear2];
for (i = 0; i < clearMe.length; i++) {
clearMe[i].val('');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
或者..简单地说:
var clear = $('#input1, #input2');
clear.val('');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="input1" name="test" value="testvalue1">
<input type="text" id="input2" name="test" value="testvalue2">
<input type="text" id="input3" name="test" value="testvalue3">
向两个文本框元素添加一个通用 class,然后使用该 class 清除该值。
$(".class").value("");
对我有用。谢谢大家。
input_1.add(input_2).val("");