javascript - 使用 jquery .post() 发送所有输入字段

标签 javascript jquery

我已经将所有输入字段的值收集到一个数组中,如下所示:

 $( ".formbox" ) . each( function(id,elem){
    form_fields[ "input-" + $( elem ) . attr( "id" )  ] = $( elem ) . val( ); 
   });

 $.log( "Collected:", form_fields );

这确实有效,然后我尝试使用 post 传递数组

 $.post(
    "server.php", 
    {
        fields: form_fields
    },
    function(ret) {

       if (!ret.success )
         alert ( "Error! Reload please!" );
       else
       {
       }
    }, 
    'json'
  );

但是在检索时,Firebug 指示字段为空

据我所知,我需要序列化数组或根本不使用它。但是我可以用什么代替呢?

请告诉我我做错了什么?

------------ 添加-------- ...我刚找到这个

 form_fields = {};

:)

我不明白如何解决问题 请告诉我 Array 和 {} 之间的区别是什么? JS 中的 {} 是什么?

最佳答案

{} 用于创建对象,[] 用于数组以指示索引。区别在于。

示例代码:

var obj = {name:"Captain",last_name:"Caveman",run:function(speed){//run;}}

//equivalent to 

var obj = new Object();
obj.name = "Captain";
obj.last_name = "caveman";
obj.run = function(speed){
  //run;
}

我刚刚使用 {} 动态创建了一个新对象,按照下面的代码调用它的成员

document.write(obj.name); 
document.write(obj.run("fast"));

但是数组比对象更简单。

JSON:Javascript 对象表示法

关于 JSON 的更多信息:http://www.w3schools.com/js/js_objects.asp

关于数组的更多信息:http://www.w3schools.com/js/js_obj_array.asp

关于javascript - 使用 jquery .post() 发送所有输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6772946/

相关文章:

javascript - 在 javascript 或 JQuery 中查找控件

javascript - knockoutjs 中的重复组件

javascript - jquery:选择具有类名和节点索引的元素

jquery - 使用 jquery.hide 隐藏 iframe

jquery - YouTube api、Chrome 扩展程序、youtube 开发者 key 和 403 禁止配额错误

javascript - 是否可以从 NodeJs 中的一个脚本创建两个服务器?

javascript - Angularjs $interval cancel 不起作用,并且 destroy 和 stateChangeSuccess 不起作用

php - 验证 PHP 和 Jquery 中的 url?

jquery - 动态重新定位 div

javascript - 从任何地方滚动一个 Div