jQuery Ajax 요청에서 쿼리 문자열 값을 어떻게 전달해야합니까? 나는 현재 다음과 같이하지만 수동으로 인코딩 할 필요가없는 더 깨끗한 방법이 있다고 확신합니다.
$.ajax({
url: "ajax.aspx?ajaxid=4&UserID=" + UserID + "&EmailAddress=" + encodeURIComponent(EmailAddress),
success: function(response) {
//Do Something
},
error: function(xhr) {
//Do Something to handle error
}
});
쿼리 문자열 매개 변수가 배열로 전달되는 예제를 보았지만 본 예제에서는 $.ajax()
모델을 사용하지 않고 대신 바로 사용합니다 $.get()
. 예를 들면 다음과 같습니다.
$.get("ajax.aspx", { UserID: UserID , EmailAddress: EmailAddress } );
나는 $ .ajax () 형식을 사용하는 것을 선호합니다 (특히 좋은 이유는 없습니다-개인적인 취향).
09/04/2013 편집 :
내 질문이 닫힌 후 ( "너무 현지화 됨") 관련 (동일한) 질문을 찾았습니다. 3 개의 공감대가 있습니다 (처음에는 그것을 찾지 못하는 것이 좋지 않습니다).
jquery를 사용하여 POST를 만들 때 'data'매개 변수를 올바르게 제공하는 방법은 무엇입니까?
이것은 내 질문에 완벽하게 대답했습니다.이 방법을 사용하면 훨씬 쉽게 읽을 수 encodeURIComponent()
있으며 URL 또는 DATA 값에서 수동으로 사용할 필요가 없습니다 (bipen의 대답에서 명확하지 않은 것으로 나타났습니다). 이는 ) data
를 통해 값이 자동으로 인코딩 되기 때문 $.param()
입니다. 이것이 다른 사람에게 유용 할 수있는 경우를 대비 하여이 예제와 함께했습니다.
$.ajax({
url: "ajax.aspx?ajaxid=4",
data: {
"VarA": VarA,
"VarB": VarB,
"VarC": VarC
},
cache: false,
type: "POST",
success: function(response) {
},
error: function(xhr) {
}
});