![](/img/trans.png)
[英]How to set the value of a text box with javascript on an ASP.NET webform
[英]set value of a text box from another text box in html5 asp.net
我在mvc4 asp.net視圖中有3個文本框。
代碼是:-
<table>
<tr><td>A:</td><td>@Html.TextBox("A")</td></tr>
<tr><td>B:</td><td>@Html.TextBox("B")</td></tr>
<tr><td>Answer:</td><td>@Html.TextBox("C")</td></tr>
</table>
例如,我想要的是
一旦我在文本框A中輸入“ 3”,在文本框B中輸入“ 2”,答案“ 5”應立即顯示在文本框C中,而無需單擊任何提交按鈕。
我怎樣才能做到這一點?
謝謝。
您需要使用某種形式的Javascript來執行此操作。 這是一段原始的JavaScript,它將事件處理程序添加到A和B上,該事件處理程序將比較文本框的值,並在滿足條件的情況下在C中顯示所需的值:
// Get all the textboxes by their IDs
var textboxA = document.getElementById("A");
var textboxB = document.getElementById("B");
var textboxC = document.getElementById("C");
// Add a handler for the keyup event
textboxA.addEventListener("keyup", showAnswer, false);
textboxB.addEventListener("keyup", showAnswer, false);
function showAnswer() {
// Convert the values from a string to a float
var valA = parseFloat(textboxA.value);
var valB = parseFloat(textboxB.value);
// Make sure both values are valid numbers
if(!isNaN(valA) && !isNaN(valB)) {
// Show the calculated value in the C box
textboxC.value = valA + valB;
}
else {
// Can't do any calculations, just show a blank value
textboxC.value = "";
}
}
這是一個小提琴來演示。
使用jQuery可以有更簡單的方法:
$(function() {
$("#A, #B").on("keyup blur", function() {
var valA = parseFloat($("#A").val());
var valB = parseFloat($("#B").val());
if(!isNaN(valA) && !isNan(valB)) {
$("#C").val(valA + valB);
}
else {
$("#C").val("");
}
});
});
這是另一個使用JQuery的解決方案
要使用JQuery,您需要在head標簽中添加JQuery lib,只需將以下行復制粘貼到head標簽中即可。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
jQuery的:
<script type="text/javascript" >
$(document).ready(function (){
$("#Txt_1").on('input', function () {
sumCal();
});
$("#Txt_2").on('input', function () {
sumCal();
});
function sumCal() {
var txt1 = $("#Txt_1").val();
var txt2 = $("#Txt_2").val();
var result = Number(txt1) + Number(txt2);
$("#Txt_3").val(result);
}
});
</script>
嘗試這個
$(document).ready(function(){
$("#txtbox2").keyup(function(){
var txt01= parseInt ($("#txtbox1").val(),10);
var txt02= parseInt( $("#txtbox2").val(),10);
$("#txtbox3").val( txt01+txt02);
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.