दिलचस्प पोस्ट
मैं एक MySQL डाटाबेस में संभव मान कैसे प्राप्त कर सकता हूँ? एचटीएमएल स्रोत को कैसे छुपाएं और राइट क्लिक और टेक्स्ट कॉपी को अक्षम करें? क्यों लंबे समय के बजाय पूर्णांक का उपयोग करें? यूआरआई, यूआरएल और यूआरएन के बीच अंतर क्या है? पोजिशनिंग के लिए उपयोग किए जाने पर फोन त्वरक के वास्तविक दुनिया सटीकता क्या है? जावास्क्रिप्ट क्लाइंट-साइड / कैसे गूगल ने इसे किया था वेबसाइट में स्क्रीनशॉट कैसे करें? (एचडीडी तक पहुंचने की आवश्यकता नहीं है) कर्ल से जेसन प्रतिक्रिया को पार्स करने के लिए लगभग स्ट्रिंग मिलान एल्गोरिदम जावा: क्लेनेबल इंटरफ़ेस का तर्क कैसे जीसीसी चर-लंबाई सरणियों को लागू करता है? जावास्क्रिप्ट काट / टुकड़ा / स्ट्रिंग में अंतिम वर्ण को छानना जावा: फिर से शुरू करें URLConnection में डाउनलोड करें उत्तरदायी साइट पर मीडिया प्रश्नों के लिए सामान्य ब्रेकपॉइंट जावास्क्रिप्ट प्रिंट iframe सामग्री केवल Mod_Rewrite अप्रत्याशित व्यवहार एल झंडा

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

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

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

<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> 

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

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

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

 $("#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(); }