2012-07-07 13 views
8

सबमिट करें मेरे पास एक पृष्ठ पर 4 रूप हैं। मुझे पता है कि रूपों को घोंसला नहीं किया जा सकता है।jQuery एकाधिक फॉर्म

<form id="form1"></form>

<form id="form2"></form>

<form id="form3"></form>

<form id="form4"></form>

इसी क्रम में प्रस्तुत किया।

प्रपत्र 1 और फॉर्म 4 पोस्ट प्रोसेसिंग के लिए एक ही PHP पृष्ठ पर पोस्ट करें। फॉर्म 1 में 1 इनपुट फ़ील्ड है फॉर्म 4 में एकाधिक फ़ील्ड, चेकबॉक्स और चयन हैं।

फॉर्म 1 या फॉर्म 4 दोनों के लिए दोनों रूपों के संयुक्त क्षेत्रों को भेजने का सबसे अच्छा तरीका क्या है?

मैंने jQuery की कोशिश की है, टेक्स्ट इनपुट और चेकबॉक्स के लिए बहुत अच्छा काम करता है, लेकिन इसे चयन के साथ काम करने के लिए नहीं मिल सकता है। फॉर्म 1 और फॉर्म 4 को संयोजित करने और फॉर्म 1 को पुनर्स्थापित करने के लिए सीएसएस का उपयोग करने का प्रयास किया, लेकिन लेआउट सही नहीं मिला।

क्या ऐसा करने के लिए कुछ आसान है?

उत्तर

10

यह संभव नहीं है। आप रूपों 'डेटा प्राप्त करने के लिए उपयोग या तो serialize() या serializeArray() विधि और उन्हें सर्वर अजाक्स का उपयोग करने के लिए पोस्ट कर सकते हैं:

एनकोड प्रस्तुत करने के लिए एक स्ट्रिंग के रूप प्रपत्र तत्वों का एक सेट।

$('#send').click(function() { 
    var firstFormData = $('form:eq(0)').serializeArray(); 
    var fourthFormData = $('form:eq(3)').serializeArray(); 
    $.ajax({ 
     url : '...', 
     type : 'post', 
     data : firstFormData.concat(fourthFormData) 
    }).done(function() { 
     // ... 
    }); 
}); 
+2

आपने मुझे इसे हराया। मेरा अपवित्र महोदय है। – Ruel

+1

@undefined ++ 1 bazinga! –

+0

@undefined धन्यवाद, वास्तव में। Serialize पहली चीज है जो मैंने कोशिश की है। चेकबॉक्स सरणी कैप्चर नहीं लग रहा है।फिर मैंने कोशिश की: $ ('# फॉर्म 4: इनपुट')। नहीं ('सबमिट करें')। क्लोन() छुपाएं()। AppendTo ('# form1'); यह सभी इनपुट के साथ बहुत अच्छा काम करता है लेकिन