मुझे एएसपीनेट में वेब पेज के पीछे कोड पर लिखे गए पेज विधि में दो आयामी सरणी पारित करनी है, मेरे पास एक दो आयामी सरणी के रूप में एक चर objList
है। मैंने इसे सफलतापूर्वक प्राप्त करने के लिए निम्नलिखित कोड का उपयोग किया और पृष्ठ विधि को नहीं कहा जाता है।jquery AJAX से पीछे कोड में पास सरणी
JAVASCRIPT
function BindTable(objList) {
$.ajax(
{
url: "CompCommonQues.aspx/SaveData",
contentType: "application/json; charset=utf-8",
dataType: "json",
type: "POST",
data: { data: objList },
success: function (data) {
//Success code here
},
error: function() { }
});
}
कोड के पीछे .cs फ़ाइल
[WebMethod]
public static string SaveData(string[,] data)
{
string[,] mystring = data;
return "saved";
}
वहाँ JSON.stringify (objList) की तरह विधि के पीछे कोड करने के लिए json सरणी पारित करने के लिए है, लेकिन नहीं कर सका इसे लागू करें। सरणी wihtout एक साधारण कॉल के पीछे
[WebMethod]
public static string SaveData(string data)
{
string mystring = data;
return "saved";
}
data: "{ 'data':'this is string' }",
और कोड में की तरह मेरे लिए काम कर data
पारित करने में समस्या है। क्या आप मेरी सहायता कर सकते हैं कि इसे सरणी के लिए कैसे पास किया जाए?
जब मैं कोड डीबग करता हूं तो वेब विधि मार नहीं रही है। फ़ंक्शन के पीछे कोड में क्या परिवर्तन आवश्यक हैं। –
आप एक स्ट्रिंग पास कर रहे हैं जैसे: {data: [["a", "b"], ["a", "b"], ["a", "b"]]}। तो आपको स्ट्रिंग (,) से पैरामीटर को स्ट्रिंग में बदलने और System.Web.Script.Serialization.JavaScriptSerializer का उपयोग स्ट्रिंग (,) को deserialize करने के लिए करने की आवश्यकता है। मैं उदाहरण का काम करूंगा। – JurgenStillaert
मैंने आपके सुझाव के अनुसार अपना कोड बदल दिया है, Arrays बनाए गए हैं लेकिन विधि के पीछे कोड अभी भी मार नहीं रहा है। –