Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery从多个值填充属性输入_Javascript_Jquery_Arrays_Object - Fatal编程技术网

Javascript jquery从多个值填充属性输入

Javascript jquery从多个值填充属性输入,javascript,jquery,arrays,object,Javascript,Jquery,Arrays,Object,是否可以为所有类型的输入填充属性name、value、type from:input或类似jQuery的序列化,并在有多个名称(如checkbox和radio)选项时组合值 这样的概念: $(this).attr('name'); $(this).attr('type'); $(this).attr('value'); // <--- combine this value when the type is checkbox or radio 您可以使用下面的逻辑,其中您可以创建一个映射来

是否可以为所有类型的输入填充属性name、value、type from:input或类似jQuery的序列化,并在有多个名称(如checkbox和radio)选项时组合值

这样的概念:

$(this).attr('name');
$(this).attr('type');
$(this).attr('value'); // <--- combine this value when the type is checkbox or radio

您可以使用下面的逻辑,其中您可以创建一个映射来存储每个输入的值,如果输入类型是radio或checkbox类型,则可以附加值

$('.submit')。单击(函数(e){
var formValues={};
$('.register:input')。每个(函数(){
var name=$(this.attr('name');
var type=$(this.attr('type');
var值=$(this.val();
var inputElement={};
var valid=true;
如果(类型=='radio'| |类型=='checkbox'){
valid=$(this).is(':checked');
如果(有效){
如果(formValues[名称]){
inputElement=formValues[名称];
var preVal=inputElement['value'];
值=上一个+','+值;
}
}
}
如果(有效){
inputElement['name']=名称;
inputElement['type']=类型;
inputElement['value']=值;
formValues[名称]=inputElement;
}
});
console.log(formValues);
});


是的,先生。。但是如果我想添加一些条件,比如if(type='text'){do something},我就不能自定义它。所以我做了这样的事情,我尝试管理属性来做一些事情,而不仅仅是分析变量名和值以进行输入处理。我几乎做到了。我只是不知道如何在表单和tipe之间合并对象。。请帮助确定,等待我尝试测试您的代码并删除$(this).is(':checked');因为我希望它仍然发送不带复选框的名称和值,或者收音机已选中乐于帮助您:)