का उपयोग करते हुए मैं का मूल्य कैसे भेज सकते हैं टेक्स्टबॉक्स को एक्शनलिंक के पैरामीटर के रूप में?
इनपुट किसी सर्वर के लिए (जैसे बक्सें के रूप में) मान-प्रांगण भेजने का शब्दार्थ सही तरीका एक एचटीएमएल का उपयोग कर <form>
और नहीं लिंक के द्वारा होता है:
<% using (Ajax.BeginForm("MyAction", "MyController", new AjaxOptions { UpdateTargetId = "updateTargetId" })) { %>
<%= Html.TextBoxFor(m => m.SomeField) %>
<input type="submit" value="Link Text" />
<% } %>
अब आप अपने नियंत्रक कार्रवाई में
आप स्वचालित रूप से मिल जाएगा उपयोगकर्ता द्वारा दर्ज SomeField
इनपुट के मूल्य:
public class MyController: Controller
{
public ActionResult MyAction(string someField)
{
/* return your content */
}
}
आप निश्चित रूप से मार्कअप अर्थ विज्ञान और जिस तरह से एचटीएमएल उल्लंघन करने के लिए कोशिश कर सकते में से काम करने के लिए माना जाता है ActionLink
का उपयोग करने पर भी गलत है, भले ही यह गलत हो।
<%= Html.TextBoxFor(m => m.SomeField) %>
<%= Html.ActionLink("Link Text", "MyAction", "MyController", null, new { id = "myLink" }) %>
और फिर एक अलग JavaScript फ़ाइल unobtrusively AJAXify इस लिंक jQuery का उपयोग करने में:
$(function() {
$('#myLink').click(function() {
var value = $('#SomeField').val();
$('#updateTargetId').load(this.href, { someField: value });
return false;
});
});
स्रोत
2011-07-14 21:24:34
आपका जवाब: http://stackoverflow.com/questions/2595830 इस मामले में यहाँ तुम क्या कर सकता है/गुजरने-एकाधिक-पैरामीटर-इन-एन-एमवीसी-एजेक्स-एक्शनलिंक – AmirHossein