मैं वसंत, जेएसपी, जावास्क्रिप्ट, jquery का उपयोग कर एक वेबपैप विकसित कर रहा हूँ।इनलाइन संपादन के लिए तालिका के भीतर फॉर्म फ़ील्ड को संरेखित कैसे करें?
मैं डेटाटेबल्स का उपयोग कर एक टेबल प्रदर्शित करता हूं। जब मैं किसी तालिका पंक्ति पर क्लिक करता हूं, तो मैं चाहता हूं कि यह सभी फ़ील्ड को इनलाइन संपादन इनपुट में बदल दें, आदि का चयन करें। इसके अलावा मैं अगली पंक्ति में कुछ अतिरिक्त इनपुट फ़ील्ड और एक सेव बटन दिखाना चाहता हूं।
अब मैं ऐसा करने के कई तरीके देखता हूं। मुझे यकीन नहीं है कि कौन सा लेना है।
मैं चयनित पंक्ति में एक हैंडल प्राप्त कर सकता हूं और फिर टीडी पर फिर से चला सकता हूं और उन्हें इनपुट/चयन फ़ील्ड में बदल सकता हूं। फिर मैं नए फ़ील्ड और सेव बटन के लिए एक अतिरिक्त पंक्ति डाल सकता हूं। मुझे इसे एक स्वच्छ समाधान के रूप में नहीं देखा जाता है। फॉर्म के लिए बाध्यकारी स्प्रिंग मॉडल एट्रिब्यूट का उपयोग करने के बजाय मुझे मैन्युअल रूप से एक पोस्ट जारी करना होगा। (मैं अभी भी यहाँ ModelAttribute का उपयोग कर सकते हैं?)
मैं की तरह एक JSP फ़ाइल में लग रहा है में एक संपादन प्रपत्र बना सकते हैं:
<form:form action="" commandName=""> <td> <input ... > </td> <td> <select ... > </td> </tr> <tr> <td> <label> <input new field> </td> <td> <button> </td> </tr>
नोट मैं एक jsp में एक शुरुआत की जरूरत नहीं है फ़ाइल के रूप में मैं तालिका में मौजूदा पंक्ति से tr का पुन: उपयोग करने की योजना बना रहा हूं। इस तरह से मैं एक साफ फॉर्म प्राप्त कर पाऊंगा और अद्यतन विधि का भी उपयोग कर सकता हूं जिसे मैंने पहले ही लिखा है जो जावा क्लास में फॉर्म को बांधता है। इसके अलावा मुझे कॉलम नामों के साथ इनपुट फ़ील्ड के संरेखण के बारे में परेशान करने की आवश्यकता नहीं है।
उत्पन्न एचटीएमएल तरह लग रहा है ...
इस दृष्टिकोण के साथ समस्याhtml में प्रपत्र तत्व की नियुक्ति का कारण बनता है पूरे फार्म के एक सेल में तंग किया जा रहा है तालिका जो अच्छी नहीं लगती है और पूरे लेआउट को गड़बड़ कर देती है। क्या और कोई रास्ता है? क्या मुझे बस एक कोस्पैन रखने के साथ तालिका की सामग्री को प्रतिस्थापित करना चाहिए और फिर इस तत्व के अंदर divs डाल देना चाहिए और यह सुनिश्चित करने के लिए कि इनपुट फ़ील्ड तालिका में कॉलम नामों के साथ संरेखित हों, ठीक से सीएसएस को ट्यून करें?
वहाँ एक बेहतर समाधान आप कर सकते हैं सुझाव है? यदि प्रश्न बहुत स्पष्ट नहीं है तो मैं अधिक जानकारी भर सकता हूं।
जो कुछ हद तक अच्छा लगता है ... क्योंकि मेरे पास प्रत्येक पंक्ति में छुपा इनपुट तत्व नहीं होंगे। –
क्या आपको लगता है कि यह एक महंगा समाधान नहीं है। प्रत्येक संपादन के लिए आप एक सर्वर यात्रा कर रहे हैं। फिर यदि उपयोगकर्ता संपादित करना नहीं चाहता है। आप टीआर को बदलने के लिए फिर से एक सेवा यात्रा करते हैं। –
यह एक आसान रखरखाव समाधान है जो एक बड़े थ्रेसहोल्ड पर ओवरहेड बनाना शुरू कर देगा (जैसे कि हम उपयोगकर्ताओं को हर पंक्ति को संपादित करने की उम्मीद करते हैं) ... अगला समाधान jQuery टेम्पलेट्स (या जिसे मैं HTML द्वीप कहता हूं) होगा ... अद्यतन उस अन्य तरीके को शामिल करने का उत्तर ... – Ayyash