[英]Select tag in javascript not calling onchange hander function
[英]Javascript onchange function not working on select tag
我創建了2個輸入字段和1個選擇字段,我應用onchange()函數來選擇調用javascript的標記,該腳本進行計算並在其他兩個字段中顯示,但由於某些語法或邏輯原因它不起作用。 請看看我的代碼,任何幫助將不勝感激。
<html>
<head>
<script type="text/javascript">
function update() {
var x = document.getElementsByName("n_person").value;
document.getElementsByName("m_income").value= x*5;
document.getElementsByName("y_income").value= x*4;
}
</script>
</head>
<body>
<div class="elist"> <span class="b_text"><span>*</span>Level 1:</span>
// here is select tag where I put onchage function <select class="ifield" name="n_person" onChange="update()">
<option value="" selected="selected">Choose no. of person referred</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
// These are teh input where resultant value will appear <input type="text" value="" placeholder="Your weekly Income..." name="m_income" id="weekly_income" class="field" readonly required />
<input type="text" value="" placeholder="Your day Income..." name="y_income" id="day_income" class="field" readonly required/>
</div>
<!--elist-->
</body>
</html>
正如其名稱所示,方法getElementsByName
返回具有指定名稱而不僅僅是一個元素的元素列表。 在您的情況下,名稱對於文檔是唯一的,並且該方法將返回僅包含一個值的列表,但您仍需要索引此列表。 因此,您必須更改此:
var x = document.getElementsByName("n_person").value;
至
var x = document.getElementsByName("n_person")[0].value;
這也適用於getElementsByName
的其他用途,您的代碼也可以使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.