html - थाइमलेफ वें सेट कैसे करें: अन्य वैरिएबल से फ़ील्ड वैल्यू




spring spring-mvc (2)

मेरे पास एक सरल पाठ इनपुट फ़ील्ड है जहां मुझे एक ऑब्जेक्ट से डिफ़ॉल्ट मान सेट करना पड़ता है और दूसरे में इसके अंतिम मान को बचाया जाता है निम्नलिखित कोड काम नहीं कर रहा है

<div th:object="${form}">
    <input class="form-control"
           type="text"
           th:value="${client.name}"  //this line is ignored
           th:field="*{clientName}"/>
</div>

फ़ॉर्म डीटीओ ऑब्जेक्ट है और क्लाइंट डाटाबेस से इकाई ऑब्जेक्ट है

इस स्थिति को हल करने का सही तरीका क्या है?

काम नहीं कर रहा मेरा मतलब है - कहें कि प्रारंभिक मान क्लाइंट हैं। नाम = "फू" और form.clientName = null। मुझे इनपुट फ़ील्ड प्रदर्शन मान "Foo" की आवश्यकता है और फ़ॉर्म सबमिशन फॉर्म के बाद "Foo" बनने के लिए value.clientName मान लेकिन इनपुट फ़ील्ड कुछ भी नहीं दिखाता है और सबमिशन फॉर्म पर .clientName मान अभी भी शून्य है;

अगर किसी को दिलचस्पी है, तो निम्न संरचना का उपयोग करके इस समस्या का समाधान किया गया (एक अन्य प्रश्न में जवाब मिला)

th:attr="value = ${client.name}"

आप इस विधि से संपर्क कर सकते हैं

इसके उपयोग के बजाय th:field html id और name उपयोग nameth:value का उपयोग मान सेट करें th:value

<input class="form-control"
           type="text"
           th:value="${client.name}" id="clientName" name="clientName" />

आशा है कि यह आपकी मदद करेगा


इसमें 2 संभावित समाधान हैं:

1) आप इसे जावास्क्रिप्ट के द्वारा देख सकते हैं ... (अनुशंसित नहीं)

<input class="form-control"
       type="text"
       id="tbFormControll"
       th:field="*{clientName}"/>

<script type="text/javascript">
        document.getElementById("tbFormControll").value = "default";
</script>

2) या बेहतर समाधान मॉडल में मान सेट करना है, जो कि आप किसी नियंत्रक द्वारा GET ऑपरेशन में दृश्य को संलग्न करते हैं। आप नियंत्रक में मान भी बदल सकते हैं, बस $ client.name से जावा ऑब्जेक्ट बना सकते हैं और setClientName कॉल करें।

public class FormControllModel {
    ...
    private String clientName = "default";
    public String getClientName () {
        return clientName;
    }
    public void setClientName (String value) {
        clientName = value;
    }
    ...
}

मुझे उम्मीद है यह मदद करेगा।





thymeleaf