我在表单中有以下输入字段。我想删除undefined并用空格“”替换它。我似乎无法让它发挥作用。我只想删除“未定义”而不是原始值。
<input type="hidden" name="address1" id="address1" value="Some address undefined" class="address1">
<input type="hidden" name="address2" id="address2" value="Another address undefined" class="address1">
我只想删除undefined。到目前为止,我已经尝试过:
var str = $('input').value().replace(/undefined/g, 'ada');
$('input').value(str);
和
$('input:contains("undefined")').each(function(){
$(this).html($(this).html().split("undefined").join(""));
});
答案 0 :(得分:1)
您正在使用Batch
,这在jQuery API中不存在。请改用val()。除此之外,您应该通过value()
遍历每个输入,并使用each()
定位当前迭代的单个输入。
this
$('input').each(function() {
var str = $(this).val().replace(/undefined/g, 'ada');
$(this).val(str);
console.log(
$(this).val()
);
});
答案 1 :(得分:1)
$('input').val()
$('input').value()
使用jQuery
而不是each()
。
$('input').each(function(i, el){
var str = $(el).val().replace(/undefined/g, '');
console.log(str);
$('input').val(str);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" name="address1" id="address1" value="Some address undefined" class="address1">
<input type="hidden" name="address2" id="address2" value="Another address undefined" class="address1">
&#13;
答案 2 :(得分:1)
使用.val()
,而不是.value()
。你可以给它一个函数作为参数。它将使用旧值作为参数调用此函数,并且返回值将用作新值(因此您不需要像其他答案一样使用.each()
)。
$("#click").click(function() {
$("input").val(function(i, oldvalue) {
return oldvalue.replace(/undefined/g, '');
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="address1" id="address1" value="Some address undefined" class="address1">
<input type="text" name="address2" id="address2" value="Another address undefined" class="address1">
<br>
<button id="click">Click to change</button>
&#13;
答案 3 :(得分:0)
只需使用
$('input').val("");
而不是
var str = $('input').val().replace(/undefined/g, 'ada');
$('input').val(str);
答案 4 :(得分:0)
您需要使用each
循环遍历其中每一个。
$('input').each(function(){
$this = $(this);
$this.val($this.val().replace(/undefined/g, ''))
console.log('new value is : ', $this.val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" name="address1" id="address1" value="Some address undefined" class="address1">
<input type="hidden" name="address2" id="address2" value="Another address undefined" class="address1">