दिलचस्प पोस्ट
पायथन में एक सूची में तत्वों की संख्या कैसे प्राप्त करें? मैं एक फ़ाइल के एन्कोडिंग को विम के साथ कैसे बदल सकता हूँ? GZIP पर संपीड़न ब्राउज़र संगतता और फायदे कम करें क्या नेस्टेड लेनदेन MySQL में अनुमत हैं? ग्लास फलक पर घटक रखकर इनो सेटअप का उपयोग करके फ़ाइल पर 'व्यवस्थापक के रूप में चलाएं' को कैसे सेट करें Python pip स्थापित psycopg2 स्थापना त्रुटि फ़ाइल इनपुट 'स्वीकार' विशेषता – क्या यह उपयोगी है? SKSpriteNode – एक गोल कोने नोड बनाएँ? कैसे MATLAB में एक चर नाम के लिए एक संख्या को जोड़ने के लिए? स्विफ्ट में एक अलग व्यू नियंत्रक से एक TableView में डेटा को पुनः लोड कैसे करें प्रॉक्सी के पीछे NuGet बड़ी फ़ाइल प्रतिलिपि के दौरान प्रगति (कॉपी-आइटम और लेखन-प्रगति?) mysql वैकल्पिक तालिका यदि स्तंभ मौजूद नहीं है बड़े सरणी की घोषणा के बारे में आउटऑफ़मोमर्री अपवाद

जावास्क्रिप्ट – चयन के आधार पर फार्म बदलने में परिवर्तन?

मैं एक ड्रॉपडाउन मेनू से चयनित मान के आधार पर प्रपत्र कार्रवाई को बदलने का प्रयास कर रहा हूं …

असल में, एचटीएमएल इस तरह दिखता है:

<form class="search-form" id="search-form" method="post" accept-charset="UTF-8" action="/search/user"> <select id="selectsearch" class="form-select" name="selectsearch"> <option value="people">Search people</option> <option value="node">Search content</option> </select> <label>Enter your keywords: </label> <input type="text" class="form-text" value="" size="40" id="edit-keys" name="keys" maxlength="255" /> <input type="submit" class="form-submit" value="Search" id="edit-submit" name="search"/> </form> 

अगर "लोगों" का चयन किया जाता है, (जो इसे डिफ़ॉल्ट रूप से होता है), कार्रवाई "/ खोज / उपयोगकर्ता" होनी चाहिए, और यदि सामग्री चयनित है, तो कार्रवाई "/ खोज / सामग्री"

मैं अभी भी आसपास खोज रहा हूं, लेकिन यह पता नहीं चला कि यह कैसे करना है …

Solutions Collecting From Web of "जावास्क्रिप्ट – चयन के आधार पर फार्म बदलने में परिवर्तन?"

 $("#selectsearch").change(function() { var action = $(this).val() == "people" ? "user" : "content"; $("#search-form").attr("action", "/search/" + action); }); 

यदि आप केवल प्रपत्र की कार्रवाई को बदलना चाहते हैं, तो मैं-पर-इनपुट-परिवर्तन के बजाय फॉर्म-ऑन-फॉर्म सबमिट करने की क्रिया को बदलना पसंद करता हूं। यह केवल एक बार आग लगती है

 $('#search-form').submit(function(){ var formAction = $("#selectsearch").val() == "people" ? "user" : "content"; $("#search-form").attr("action", "/search/" + formAction); }); 

क्या आपके पास कोई फॉर्म है?
यदि नहीं, तो आप इसका उपयोग कर सकते हैं:

 <div> <input type="hidden" value="ServletParameter" /> <input type="button" id="callJavaScriptServlet" onclick="callJavaScriptServlet()" /> </div> 

निम्न जावास्क्रिप्ट के साथ:

 function callJavaScriptServlet() { this.form.action = "MyServlet"; this.form.submit(); }