簡體   English   中英

輸入的占位符不會從<select>

[英]Input's placeholder won't change from <select>

因此,基本上我想要實現的是在更改選擇內容時更改輸入的占位符。 第一個輸入成功更改,但似乎與第二個輸入不同。 下面是我正在使用的代碼:

 function onChange(fromOrTo) { if (fromOrTo = 'from') { document.getElementById("from").placeholder = document.getElementById("selectFrom").value; } else if (fromOrTo = 'to') { document.getElementById("to").placeholder = document.getElementById("selectTo").value; } } 
 <body> <div id="sect"> <section> <select onchange="onChange('from')" id="selectFrom"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> <span class="toText">to</span> <select onchange="onChange('to')" id="selectTo"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> </section> <section> <input type="text" id="from"> <span id="toText">to</span> <input type="text" id="to"> </section> </div> </body> 

您只需要與===而不是=進行比較

 function onChange(fromOrTo) { if (fromOrTo === 'from') { document.getElementById("from").placeholder = document.getElementById("selectFrom").value; } else if (fromOrTo === 'to') { document.getElementById("to").placeholder = document.getElementById("selectTo").value; } } 
 <body> <div id="sect"> <section> <select onchange="onChange('from')" id="selectFrom"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> <span class="toText">to</span> <select onchange="onChange('to')" id="selectTo"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> </section> <section> <input type="text" id="from"> <span id="toText">to</span> <input type="text" id="to"> </section> </div> </body> 

你只需要在你的每一個等號if條件句。 將分配給變量,而不是對其進行比較 切換到兩個等號(或三個以避免類型強制)將解決此問題:

 function onChange(fromOrTo) { if (fromOrTo === 'from') { document.getElementById("from").placeholder = document.getElementById("selectFrom").value; } else if (fromOrTo === 'to') { document.getElementById("to").placeholder = document.getElementById("selectTo").value; } } 
 <body> <div id="sect"> <section> <select onchange="onChange('from')" id="selectFrom"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> <span class="toText">to</span> <select onchange="onChange('to')" id="selectTo"> <option value="Celcius">Celcius</option> <option value="Farenheit">Farenheit</option> <option value="Kelvin">Kelvin</option> <option value="Reamur">Reamur</option> </select> </section> <section> <input type="text" id="from"> <span id="toText">to</span> <input type="text" id="to"> </section> </div> </body> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM