2014-10-31 2 views
0

내 질문 : 아약스 요청을 사용하여 여러 데이터를 게시하려고 해요. 하지만 난 파이썬 스크립트에서 아무것도 얻을하지 않습니다.파이썬에 아약스와 함께 여러 jquery 게시

data: { serializedData1, serializedData }
error: Uncaught SyntaxError: Unexpected token ,

을하지만이 ,를 제거하면 나는 더 많은 오류 구문 오류를 얻을 것이다 : 나는 콘솔에서 오류가 발생, 그것은 말했다. 자바 스크립트를 다음과 같이 편집하면 data: serializedData1 작동하지만 원하는 것은 아닙니다.

var valueID = $(this).parent().parent().find(".inputLiveID")// this is the id I want 
var serializedData1 = valueID.serialize() 
var $form = $(this); // I want this value too 
var serializedData = $form.serialize(); 

request = $.ajax({ 
    url: "/accounts/editnad/", 
    type: "post", 
    data: { serializedData1, serializedData } 
}); 

request.done(function (response, textStatus, jqXHR){ 
    console.log(response) 
}); 

request.fail(function (jqXHR, textStatus, errorThrown){ 
    console.error(
     "The following error occured: "+ 
       textStatus, errorThrown 
     ); 
}); 

파이썬 스크립트 :

def editnad(updatenad): 
    result = False 
    updid = updatenad.POST.get("newid") 
    newnr = updatenad.POST.get("nadcodenr") 
    newbesch = updatenad.POST.get("nadbeschikbaar") 

    return HttpResponse(updid,newnr) 

답변

0

당신은 파이썬

updid = udatenad.POST.get('form1').updid 

또한 내가 할당하지 않은주의 것에

$.ajax({ 
    url: 'myScript.py', 
    data: {form1: serializedData1, form2: serializedData}, 
    success: function(response) { 
     //do something with response 
    } 
}); 

그리고 예를 들어, 아약스 호출에서 이름/값 쌍을 통과해야 변수에 대한 아약스 호출 대신 성공 콜백을 사용했습니다. 약속을 사용하려면 할당하고 해상도/깨진 콜백을 사용할 수 있습니다. 내가 옛날 학교 인 것 같아.

+0

jQuery Ajax 호출은 버전 1.5 이후로 promise 인터페이스를 구현하는 [jqXHR 객체] (http://api.jquery.com/jQuery.ajax/#jqXHR)를 반환했으며, 이는 이전 버전과 상당히 유사합니다. –

+0

네 말이 맞아, 내가 틀렸다. 대부분의 경우 이해하기가 더 쉽고 jQuery의 약속은 A +와 거의 동일하지 않기 때문에 보통 콜백을 권장합니다. 내 대답을 업데이트했습니다. –

0

당신은 []하지 {}와 JS의 배열을 정의합니다.

data: [ serializedData1, serializedData ] 
+0

데이터 배열/값의 값을 읽을 수 있도록 파이썬 스크립트에서 무엇을 변경해야합니까? – STP38

관련 문제