2013-02-19 15 views
14

मेरे पास बहुत से फॉर्म हैं, और उपयोगकर्ता उस पृष्ठ पर कुछ चुनने जा रहा है। जब उपयोगकर्ता करता है, तो मुझे उस तत्व को कहीं और जगह पर रखना होगा, वास्तव में एक शॉपिंग कार्ट की तरह। लेकिन वास्तव में इरादे के रूप में काम करने के लिए मुझे पृष्ठ पर पहले फॉर्म से अधिक प्रतीत नहीं होता है। मैं कोशिश की है कई चीजों:यदि कोई फॉर्म सबमिट किया गया है तो jQuery के साथ कैसे जांचें?

  1. सभी रूपों में एक ही आईडी है, जो केवल के रूप में मैं चाहता था, मुझे उस रूप का डेटा देने के प्रथम रूप में कार्य करने के कारण होता है दे।
  2. उन्हें फिर से एक ही आईडी दें, इस बार आईडी के लिए एक अद्वितीय पहचानकर्ता जोड़ना, लेकिन निश्चित रूप से, तो मेरा jQuery $('#something') इसे पकड़ नहीं पाता है क्योंकि यह मेल नहीं खाता है।

तो मैं सोच रहा हूं कि मैं इसके बारे में कैसे जाऊंगा। मुझे केवल पृष्ठ पर सबमिट किए गए फॉर्म से डेटा प्राप्त करने की आवश्यकता है। और जैसा कि बताया गया है, मैं उन्हें किसी तरह का एक उपसर्ग दे सकता हूं, जैसा कि मेरे पास है, लेकिन तब मुझे नहीं पता कि इसका मिलान कैसे किया जाए।

सहायता बहुत सराहना की जाएगी!

(, केवल एक उदाहरण दिखाने के लिए मैं क्या मतलब है निश्चित रूप से) अनुरोध के रूप में कुछ कोड:

HTML:

<form id="something-0"><input type="hidden" value="0"><input type="submit"></form> 
<form id="something-1"><input type="hidden" value="1"><input type="submit"></form> 

jQuery:

$("#something-%").submit(function(e) { 
e.preventDefault(); 
$("#some-span").html(data); 
}); 

मैं # चाहते हैं "-" के बाद आने वाली कुछ भी स्वीकार करने के लिए%, मुझे आशा है कि आप समझेंगे।

+1

कृपया कुछ कोड दिखाएं। – Wez

+1

क्या हम एक बेवकूफ उदाहरण प्राप्त कर सकते हैं? – dibs

+0

कोड की बहुत सराहना की जाएगी – PlantTheIdea

उत्तर

23

एक सामान्य जवाब के रूप में, तत्वों के एक समूह को वर्गीकृत करने, class विशेषता का उपयोग, प्रत्येक तत्व एक ही वर्ग के नाम दे रही है। फिर आप उस वर्ग के तत्वों का चयन कर सकते हैं। एक तत्व में एक से अधिक वर्ग हो सकते हैं।

$(".something"); 

आप आईडी का उपयोग करना चाहिए, तो आप एक विशेषता का भी उपयोग कर सकते हैं:

$("[id^='something']"); // all elements with an id beginning with 'something' 
$("[id$='something']"); // all elements with an id ending with 'something' 

इस विशिष्ट प्रश्न के लिए, के बाद से अगर आप पृष्ठ में किसी भी रूप पर कार्य करना चाहते हैं, सबसे सरल विकल्प होगा चयनकर्ता के बावजूद

$("form"); 

submit() घंटे के भीतर this का हवाला आप पहचान सकते हैं जो प्रपत्र प्रस्तुत की गई थी,: तत्व नाम का भी उपयोग कर एंडलर:

$("form").submit(function (e) { 
    e.preventDefault(); 
    var formId = this.id; // "this" is a reference to the submitted form 
}); 
+0

बढ़िया, यह पूरी तरह से काम किया !! धन्यवाद! – Lozzano

6

आप चयनकर्ता 'फॉर्म' का उपयोग कर सभी रूपों को पकड़ सकते हैं, उदा।

$("form").submit(function() { 
    var theForm = $(this); 
    var formID = theForm.attr("id"); 
    // do something 
}); 
+0

क्या आप उद्धरण भूल गए थे? '$ (" फॉर्म ")' – gilly3

+0

निश्चित रूप से किया था! ओह! – devrooms

संबंधित मुद्दे