2015-08-25 13 views
6

मैं एक फॉर्म के अंदर एक फॉर्म भेजना चाहता हूं, लेकिन जब मैं फॉर्म-इन-द-फॉर्म जमा करता हूं, तो सभी फॉर्म अब सबमिट किए जाते हैं। क्या ऐसा करना भी संभव है?कोणीय फॉर्म के अंदर फॉर्म जमा करें?

<form name="add_foobar_form" novalidate ng-submit="addFoobar(foobar)"> 

    <form name="send_contact_form" novalidate ng-submit="sendContact(hello)"> 
     <input type="text" ng-model="hello.bye"> 
     <input type="submit" value="sendmall"> 
    </form> 

    <input type="text" ng-model="foobar.go"> 
    <input type="submit" value="sendall"> 

</form> 
+0

यह बेहतर फार्म http://stackoverflow.com/questions/379610/can-you-nest-html-forms अंदर नेस्ट नहीं प्रपत्र करना आप कर सकते हैं है सबमिट बटन के लिए फॉर्म टैग का प्रयास करें http://www.w3schools.com/tags/att_button_form.asp – Grievoushead

उत्तर

13

Can you have nested forms? बस नहीं, नेस्टेड फॉर्म काम नहीं करेगा।

Docs Says

कोणीय में, रूपों नेस्ट जा सकता है। इसका मतलब यह है कि बाहरी फॉर्म मान्य है जब सभी बच्चे के रूप मान्य हैं। हालांकि, ब्राउज़र तत्वों के घोंसले की अनुमति नहीं देते हैं, इसलिए कोणीय ngForm निर्देश प्रदान करता है जो समान रूप से व्यवहार करता है लेकिन घोंसला हो सकता है। इससे आप नेस्टेड रूपों, जो बहुत उपयोगी है जब रूपों है कि गतिशील ngRepeat निर्देश

उपयोग करते हुए उत्पन्न कर रहे हैं लेकिन दुर्भाग्य से आप ng-submit फार्म का उपयोग नहीं कर सकता है में कोणीय सत्यापन निर्देशों का उपयोग कर, कि माता-पिता कहते हैं की अनुमति देता है किसी भी आंतरिक रूप के क्लिक पर ng-submit विधि। इस के लिए

Example Plunkr

वर्कअराउंड से भीतरी नेस्टेड के लिए ng-submit निर्देश का उपयोग नहीं करते होगा। आपको बटन पर ng-click का उपयोग करना चाहिए और button पर submit से बटन का प्रकार बदलना चाहिए।

मार्कअप

<form name="add_foobar_form" novalidate ng-submit="addFoobar('foobar')"> 
    <ng-form name="send_contact_form" novalidate> 
     <input type="text" ng-model="hello.bye"> 
     <input type="button" value="sendmall" ng-click="sendContact('hello')"> 
    </ng-form> 

    <input type="text" ng-model="foobar.go"> 
    <input type="submit" value="sendall"> 
</form> 

Workaround Plunkr

+0

समस्या यह है कि दोनों मामलों में एक ही ईवेंट हैंडलर को – dfsq

+0

कहा जाता है .. धन्यवाद .. मुझे इस पर काम करें .. –

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