2012-04-26 3 views
0

jquery ajax 함수를 호출하고 데이터를 전달하고 싶습니다. 데이터가 쿼리 문자열로 형식화되어 있어야한다는 것을 알고 있습니다. 만약 내가 $(':checked') 같은 데이터를 전달하면 그것은 tagname=value1&tagname=value2...etc 좋은 것으로 서식이 지정됩니다.jquery ajax 함수에 대한 연관 배열을 데이터로 전달합니다.

이제 jquery 결과를 일부 정수가 포함 된 연관 배열로 바꾸고 싶습니다. value1=true$value2=true이 있습니다. 그건 내가 원하는 것이 아니다.

어떻게 jquery ajax 호출에 전달할 키를 사용하여 연관 배열을 포맷 할 수 있습니까?

+0

이 결합 배열은 어디서 오는 것입니까? 수동으로 작성했거나 JQuery 결과를 출력 했습니까? 만약 JQuery가 출력된다면 $를 &로 바꾸면 작업이 완료됩니다. –

답변

1

좋아, 내가 알아 낸 해결책이 하나있다.

function() { 
    var kvArray = []; 
    for (x in MyAssociativeArray) { 
     var kv = {}; 
     kv.name = "NameIWantToAssign"; 
     kv.value = x; 
     kvArray.push(kv); 
    } 

    return kvArray; 
}; 

트릭은 .name을 .value 및 속성을 사용한다 : I는 JQuery와 AJAX 기능 데이터로 전달 될 수있는 배열을 반환 다음 함수를 만들었다. 전달 된 객체가 배열 인 경우는 .serializeArray에 의해 반환되는 형식()

[{name:"first",value:"Rick"}, 
{name:"last",value:"Astley"}, 
{name:"job",value:"Rock Star"}] 

거기에서 객체의 배열해야

: 나는 다음과 같은 JQuery와 설명서를 읽은 후 생각이있어 아마 더 좋은 방법. 아는 경우 의견을 말하거나 다른 대답을 제공해주십시오.

관련 문제