मुझे 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 अपवोट्स के साथ नो-कम (पहली जगह में नहीं मिलने के लिए मेरा बुरा):
POST करने के लिए jquery का उपयोग करते हुए, 'डेटा' पैरामीटर की ठीक से आपूर्ति कैसे करें?
इसने मेरे प्रश्न का पूरी तरह से उत्तर दिया, मैंने पाया कि इस तरह से पढ़ना बहुत आसान है और मुझे encodeURIComponent()
URL या डेटा मूल्यों में मैन्युअल रूप से उपयोग करने की आवश्यकता नहीं है (जो कि मुझे 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) {
}
});