為VueJS中的v-for產生的每個輸入表單提供唯一的ID的方法
P粉245276769
P粉245276769 2023-09-02 14:58:19
0
1
539
<p>我正在嘗試產生一個數字(透過props傳遞)的輸入表單,並將使用者輸入儲存在inputValues陣列中。 我的程式碼如下:</p> <pre class="brush:php;toolbar:false;"><template> <div v-for="n in number" v-bind:key="n"> <input ref= "inputs" v-bind:id="'str' n" :v-model="inputValues[n]"/> </div> </template> export default defineComponent({ name: 'name', props: [ 'number', ], data() { return { inputValues: [] } } });</pre> <p>但是inputValues中沒有儲存任何內容。我做錯了什麼?另外,我如何給輸入欄位賦予不同的id,以便以後可以在CSS中以不同的樣式進行設定? </p> <p>編輯:我設法讓它工作了! </p> <p> <pre class="snippet-code-html lang-html prettyprint-override"><code><div v-for="(n,i) in number" v-bind:key="n"> ; <input ref= "inputs" :id="'str' n" v-model="inputValues[i]" /> </div></code></pre> </p>
P粉245276769
P粉245276769

全部回覆(1)
P粉200138510

我設法使它工作。 v-bind: 或 ":" 不應該用於 v-model。我添加了索引,因為 n 從 1 開始而不是從 0 開始。

<div v-for="(n,i) in number"  v-bind:key="n">
        <input ref= "inputs" :id="'str' + n" v-model="inputValues[i]" />
        
</div>
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板