2014-12-29 3 views
-1

jquery 또는 일반 자바 스크립트를 사용하여 기존 데이터에 더 많은 데이터를 추가하는 방법은 무엇입니까?jquery를 사용하여 기존 데이터에 데이터를 추가하는 방법은 무엇입니까?

fd = { 
    name : file_data.name, 
    size : file_data.size 
}; 

// And others. 
$("form").find('input[type=hidden]').each(function(){ 
    $(fd).data(this.name, this.value); 
}); 

나는이 이상한 결과를 얻을 ,

Array 
(
    [name] => Dangerous Man.mp3 
    [size] => 11912748 
    [jQuery1910560199169432603] => Array 
     (
      [toJSON] => undefined 
      [data] => Array 
       (
        [article_id] => 
        [category_id] => 15 
        [user_id] => 1 
        [max_upload_filesize] => 3 
        [method] => upload 
        [required[category_id] => Category ID 
       ) 

     ) 

) 

하지만이 결과 후 오전

Array 
(
    [name] => Dangerous Man.mp3 
    [size] => 11912748 
    [article_id] => 1 
    [category_id] => 15 
    [user_id] => 1 
    [max_upload_filesize] => 3 
    [method] => upload 
    [required[category_id] => Category ID 

) 

어떤 아이디어가?

답변

1

그냥 속성에만 요소, NodeList를, 선택 또는 $ 함수가 아닌 객체에 함수를 전달할 수 있습니다

$("form").find('input[type=hidden]').each(function(){ 
    fd[this.name] = this.value; 
}); 
1

객체에 추가. 당신은 이런 식으로 할 갈까요 :

fb[ this.name ] = this.value; 

대신

$(fd).data(this.name, this.value); 
+0

감사하지만'FD =의 기존 데이터를 제거 {file_data.size 을 이름 : file_data.name, 크기} ; ' – laukok

+1

'은 'name'및 'size'라는 이름의 숨겨진 입력 필드가 있기 때문입니다. itteration 후에 fd 객체의 이름과 크기 속성의 할당을 이동할 수 있다면 작동 할 것입니다. –

관련 문제