[英]How to pass value from <asp:textbox> to javascript function
I am trying to call a javascript
function from <asp:textbox>
. 我试图从<asp:textbox>
调用一个javascript
函数。 My javascript
function needs to add value from two <asp:textbox>
, add them and then pass the value to another <asp:textbox>
. 我的javascript
函数需要从两个<asp:textbox>
添加值,添加它们然后将值传递给另一个<asp:textbox>
。 My javascript
function is as follows 我的javascript
函数如下
function getAmount() {
var total = $('#ItemRate').val() * $('#ItemQty').val();
$('#ItemAmount').val(total);
}
My <textbox>
is as follows 我的<textbox>
如下
<asp:TextBox runat="server" id="ItemRate" />
<asp:TextBox runat="server" id="ItemQty" onchange="javascript:getAmount()" />
<asp:TextBox runat="server" id="ItemAmount" />
Upon running, my console shows the value of total as NaN. 运行时,我的控制台显示总值为NaN。 How do I solve this one? 我该如何解决这个问题?
Here is the complete code 这是完整的代码
Value1: <asp:TextBox ID="tbx1" runat="server"></asp:TextBox>
Value2: <asp:TextBox ID="tbx2" runat="server"></asp:TextBox>
<button onclick="Add()">Add</button><br />
Result:<asp:TextBox ID="tbx3" runat="server"></asp:TextBox>
<script type="text/javascript">
function Add()
{
var x = document.getElementById('<%= tbx1.ClientID %>').value;
var y = document.getElementById('<%= tbx2.ClientID %>').value;
document.getElementById('<%= tbx3.ClientID %>').value=parseInt(x)+parseInt(y);
}
</script>
change value()
to val()
: 将value()
更改为val()
:
function getAmount() {
var total = $('#ItemRate').val() * $('#ItemQty').val();
$('#ItemAmount').val(total);
}
Usually ASP change the ID
attribute for each elements which have runat="server"
attribute. 通常,ASP会更改具有runat="server"
属性的每个元素的ID
属性。
So you need other attribute for selecting them, eg. 所以你需要其他属性来选择它们,例如。 class
. class
。
Try this code: 试试这段代码:
function getAmount() {
var total = $('.ItemRate').val() * $('.ItemQty').val();
$('#ItemAmount').val(total);
}
Html: HTML:
<asp:TextBox runat="server" class="ItemRate" id="ItemRate" />
<asp:TextBox runat="server" class="ItemQty" id="ItemQty" onchange="javascript:getAmount()" />
<asp:TextBox runat="server" class="ItemAmount" id="ItemAmount" />
Try with parsing value in float like below code. 尝试在float中解析值,如下面的代码。
parseFloat("10");
Now multiply both value, also check your id get changed or not in browser doing inspect element. 现在将两个值相乘,同时检查你的id是否在浏览器中执行检查元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.