2013-12-11 3 views
0

본래의 javascript만을 찾고 있습니다. 나는 jQuery와 underscore.js에 대해서도 개방적이다. 나는 조금 봤 거든 질문/답변만을 더 두 가지 개체를 결합하는 방법을 설명했다.n 개의 객체와 javascript를 결합합니다.

jquery에서 확장이 가능합니다. 하나의 객체로 다른 속성을 가진 n 개의 객체를 결합하는 무언가를 찾고 있습니다.

나는 실제로 $('form').serializeArray()을하고 있는데, 그때 나는 폼으로부터 객체의 배열을 얻는다. 양식에서 하나의 객체를 가져올 수있는 방법이 있습니까? 또는 다른 속성을 가진 더 많은 객체를 단일 객체로 결합하는 방법은 무엇입니까?

+0

배열이 있습니다. $ .extend는 객체를위한 것이다. 너 정확히 뭘 하려구? 1 아약스 요청을 통해 여러 양식을 제출 하시겠습니까? –

+0

작업중인 개체의 예제와 해당 예제 개체의 예상 출력을 제공 할 수 있습니까? –

+0

그는'[{name : "inputname", value : "inputvalue"}, ...]' –

답변

1

양식을 json 개체로 변환하려면 this을 사용하십시오.

:

$.fn.serializeObject = function() 
{ 
    var o = {}; 
    var a = this.serializeArray(); 
    $.each(a, function() { 
     if (o[this.name] !== undefined) { 
      if (!o[this.name].push) { 
       o[this.name] = [o[this.name]]; 
      } 
      o[this.name].push(this.value || ''); 
     } else { 
      o[this.name] = this.value || ''; 
     } 
    }); 
    return o; 
}; 

는 여러 개체가 underscore extend를 사용하여 결합하려면 :

serializeArray 이미 정확하게, 당신은 당신의 요구 형식으로 데이터를 마사지 할 필요가 않습니다 위의 대답에서 인용

_.extend({name: 'moe'}, {age: 50}, {test: "test"}); 

또는 jQuery extend :

$.extend({name: 'moe'}, {age: 50}, {test: "test"}) 
관련 문제