asp.net mvc - Set a value in Model via javascript -
मेरे पास यह कोड है:
सार्वजनिक वर्ग खाता मॉडेल {[आवश्यक] [प्रदर्शन (नाम = "सदस्यता आईडी")] सार्वजनिक स्ट्रिंग SubscriptionId {get; सेट; } [आवश्यक] [प्रदर्शन (नाम = "भंडारण नाम")] सार्वजनिक स्ट्रिंग स्टोरेजनाम {प्राप्त; सेट; } [आवश्यक] [प्रदर्शन (नाम = "भंडारण कुंजी")] सार्वजनिक स्ट्रिंग स्टोरेजकी {प्राप्त; सेट; } [आवश्यक] [प्रदर्शन (नाम = "होस्टेड नाम")] सार्वजनिक स्ट्रिंग होस्टेडनाम {get; सेट; } ....} और ...
$ ('a.sign-in')। Live ('click', फ़ंक्शन ( ) {चेतावनी ("बिंगो!"); Var id = document.getElementById ('id')। मूल्य; var नाम = document.getElementById ('name')। Value; var key = document.getElementById ('key')। मान; var चुनें = document.getElementById ("सूचीहोस्टेड"); var चयनित = चयन करें। विकल्प [चयन करें। चयन करेंइंडैक्स] .टेक्स्ट; ...} मैं सिर्फ एक मान सेट करना चाहता हूँ
मेरे विचार के साथ अद्यतन करें
मेरे मॉडल पर - & gt; मॉडल में "चयनित" मान डालें m.HostedName मैं यह कैसे कर सकता हूं?
मेरा दृश्य
@model WebManager.Models.AccountModel @ {ViewBag.Title = "खाता";} & lt; h2 & gt; खाता & lt; / h2 & gt; & lt; p & gt; कृपया अपने ऐज़्यूर खाते का विवरण दर्ज करें & Lt; / p & gt; @ Html.ValidationSummary (सच है, "अमान्य खाता। कृपया त्रुटियों को ठीक करें और पुनः प्रयास करें।") @using (HTML.BeginForm ()) {& lt; div & gt; & lt; fieldset & gt; & lt; किंवदंती & gt; खाता जानकारी & lt ; / लीजेंड & gt; & lt; div class = "एडिटर-लेबल" & gt; @ html.LabelFor (m = & gt; m.Subscriptio एनआईडी) & lt; / div & gt; & Lt; div class = "editor-field" & gt; @ Html.TextBoxFor (m = & gt; m.SubscriptionId, नया {id = "id"}) @ HTML.ValidationMessageFor (m = & gt; m.SubscribingId) & lt; / div & gt; & Lt; div class = "editor-label" & gt; @ Html.LabelFor (m = & gt; m.StorageName) & lt; / div & gt; & Lt; div class = "editor-field" & gt; @ Html.TextBoxFor (m = & gt; m.StorageName, नया {id = "name"}) @ HTML.ValidationMessageFor (m = & gt; m.StorageName) & lt; / div & gt; & Lt; div class = "editor-label" & gt; @ Html.LabelFor (m = & gt; m.StorageKey) & lt; / div & gt; & Lt; div class = "editor-field" & gt; @ Html.TextBoxFor (m = & gt; m.StorageKey, नया {id = "key"}) @ HTML.ValidationMessageFor (m = & gt; m.StorageKey) & lt; / div & gt; & Lt; p & gt; & Lt; a href = "# लॉगिन-बॉक्स" वर्ग = "लॉगिन-विंडो" & gt; & Lt; इनपुट प्रकार = "सबमिट करें" मान = "लागू करें" / & gt; & lt; / a & gt; & Lt; / p & gt; & Lt; / fieldset & gt; & Lt; / div & gt; & Lt; div id = "लॉगिन-बॉक्स" वर्ग = "लॉगिन-पॉपअप" & gt; & Lt;! - a href = "#" class = "close" & lt; img src = "close_pop.png" वर्ग = "बीटीएन_क्लोज़" शीर्षक = "विंडो बंद करें" alt = "बंद करें" / & gt; & lt; / एक - & gt; & Lt; form method = "post" class = "signin" action = "#" & gt; & Lt; fieldet class = "textbox" & gt; & Lt; label class = "hostedservice" & gt; & Lt; span & gt; होस्टेड सर्विस & lt; / span & gt; & Lt; br / & gt; & Lt; id = 'listahosted' name = 'listahosted' & gt; चुनें & Lt; विकल्प & gt; अपना होस्टेड & lt; / option & gt; चुनें & Lt; / चयन & gt; & Lt; / लेबल & gt; & Lt; br / & gt; & Lt; लेबल वर्ग = "तैनाती" & gt; & LT; अवधि & gt; भूमिका को & lt; / span & gt; & Lt; br / & gt; & Lt; आईडी = 'लिस्टेडएपमेंट्स' नाम = 'लिस्टेडएपमेंट्स' & gt; & Lt; विकल्प & gt; अपनी भूमिका चुनें & lt; / विकल्प & gt; & Lt; / चयन & gt; & Lt; / लेबल & gt; & Lt; br / & gt; & Lt; एक वर्ग = "साइन-इन" & gt; & Lt; इनपुट प्रकार = "सबमिट करें" मान = "प्रवेश करें" / & gt; & lt; / a & gt; & Lt; / fieldset & gt; & Lt; / प्रपत्र & gt; & Lt; / div & gt; मैं यहां जावास्क्रिप्ट नहीं डाल रहा हूं।
स्थिति यह है: मेरे पास जेएस द्वारा भरा एक कन्बोकोबॉक्स है और मुझे अपने मॉडल पर चयनित मान डालनी होगी। / P>
सभी मदद apreciated है
मैंने देखा कि पहली बात यह थी कि आप < कोड> जमा करें अपने a टैग के अंदर फ़ील्ड आपको ऐसा नहीं करना चाहिए। मैं बटन या type = "submit" के साथ टैग का उपयोग करूँगा। अपने इनपुट या चुनें तत्वों को आपके मॉडल में गुण नाम से मेल खाना चाहिए। इस मामले में सूचीहोस्ट को होस्ट किया गया नाम होना चाहिए। चयन सूची के लिए HtmlHelper का उपयोग करना आसान हो सकता है। इस तरह यदि आप मॉडल में प्रॉपर्टी नाम बदलते हैं, तो आपका दृश्य कम से कम वाईएसओडी को त्रुटि खोने के बजाय होगा। इसलिए यदि आप यह सब अजाक्स होना चाहते हैं, तो ऐसा कुछ करें:
// आपको एंकर के बजाय एक बटन तत्व का उपयोग करना चाहिए, लेकिन एंकर काम करेगा ... $ ('a.sign-in')। Live ('click', function (e) {e.preventDefault ); Var फार्म = $ ("फॉर्म"); $। एजेक्स ({url: form.attr ('क्रिया'), डेटा: form.serialize (), सफलता: फ़ंक्शन (डेटा) {// यहाँ एक????
Comments
Post a Comment