我使用html数组方法定义了我的表单元素,如下所示:
<input type="text" maxlength="45" name="Apikey[key]">
<select name="Apikey[developer]">
如何使用jQuery清除所有Apikey数组?
问题是如何清除它们?必须清除所有可能的表单字段。
答案 0 :(得分:2)
在选择器中尝试^(以...开头)而不是|。 还要使用数据重置适当存储初始值的字段。 即:
$(function(){
$("input[name^=Apikey]").each(function(){
var $this = $(this);
$this.data("initial-val", $this.val());
});
});
.
.
.
function resetApiValues(){
$("input[name^=Apikey]").each(function(){
var $this = $(this);
$this.val($this.data("initial-val"));
});
}
答案 1 :(得分:1)
$( '输入[名^ = “Apikey”]')...
请在此处查看the official jQuery API。再见
答案 2 :(得分:1)
最简单的方法是使用"standard" form plugin并致电clearForm()
或clearFields()
:
$('#formId').clearForm();
$('#formId [name^=Apikey]').clearFields();
或者,如果您不想要或不需要所有额外的表单插件机制,只需抓住源代码并找出clearForm()
和clearFields()
的工作方式。 clearFields()
实际上非常简单:
$.fn.clearFields = $.fn.clearInputs = function() {
return this.each(function() {
var t = this.type, tag = this.tagName.toLowerCase();
if (t == 'text' || t == 'password' || tag == 'textarea') {
this.value = '';
}
else if (t == 'checkbox' || t == 'radio') {
this.checked = false;
}
else if (tag == 'select') {
this.selectedIndex = -1;
}
});
};
答案 3 :(得分:0)
你去:
$("input[name^='Apikey']").attr("name", "");
清除值:
$("input[name^='Apikey']").val("");
我看到你已编辑过包含不同的HTML元素,在这种情况下:
$("*[name^='Apikey']")).each(function() {
switch(this.type) {
case 'password':
case 'select-multiple':
case 'select-one':
case 'text':
case 'textarea':
$(this).val('');
break;
case 'checkbox':
case 'radio':
this.checked = false;
}
});
答案 4 :(得分:0)
你无法清除所有的价值观。像SELECT这样的元素必须有一个值。