मैं खुद को ASP.NET MVC और JQuery को पढ़ाने के लिए एक छोटा सा ऐप बना रहा हूं, और उनमें से एक पृष्ठ उन मदों की एक सूची है जिसमें कुछ का चयन किया जा सकता है। फिर मैं एक बटन दबाना चाहता हूं और अपने नियंत्रक को एक सूची (या कुछ समतुल्य) भेज सकता हूं जिसमें चयनित आइटमों के आईडी हैं, जो कि JQuery के पोस्ट फ़ंक्शन का उपयोग कर रहे हैं।
मैं चयनित तत्वों के आईडी के साथ एक सरणी प्राप्त करने में कामयाब रहा, और अब मैं इसे पोस्ट करना चाहता हूं। एक तरह से मैं यह कर सकता था कि मेरे पेज में एक डमी फॉर्म है, एक छिपे हुए मूल्य के साथ, और फिर चयनित वस्तुओं के साथ छिपे हुए मूल्य को सेट करें, और उस फॉर्म को पोस्ट करें; हालांकि यह गंभीर दिखता है।
क्या नियंत्रक को सीधे सरणी भेजकर, इसे प्राप्त करने का एक क्लीनर तरीका है? मैंने कुछ अलग चीजों की कोशिश की है, लेकिन ऐसा लगता है कि नियंत्रक उस डेटा को मैप नहीं कर सकता है जो इसे प्राप्त कर रहा है। यहाँ अब तक का कोड है:
function generateList(selectedValues) {
var s = {
values: selectedValues //selectedValues is an array of string
};
$.post("/Home/GenerateList", $.toJSON(s), function() { alert("back") }, "json");
}
और फिर मेरा नियंत्रक ऐसा दिखता है
public ActionResult GenerateList(List<string> values)
{
//do something
}
सभी मैं प्राप्त करने में कामयाब नियंत्रक पैरामीटर में एक "शून्य" है ...
कोई सुझाव?
Request["values[]"]