在输入费率和数量时,我希望自动计算总金额,所以我尝试了以下内容。
function getAmt()
{
if(isNaN(document.getElementById('<%=TxtRate.ClientID%>').value))
{
alert("Illegal Rate Entered, Please Check It Out.");
document.getElementById('<%=TxtRate.ClientID%>').focus;
return;
}
else if(isNaN(document.getElementById('<%=TxtQty.ClientID%>').value))
{
alert("Illegal Quantity Entered, Please Check It Out.");
document.getElementById('<%=TxtQty.ClientID%>').focus;
return;
}
document.getElementById('<%=TxtAmt.ClientID%>').value=parseFloat
(document.getElementById('<%=TxtRate.ClientID%>').value)*parseFloat
(document.getElementById('<%=TxtQty.ClientID%>').value)
}
现在我创建了一个文本框:
<TextBox ID="TxtAmt" runat="server" BorderStyle="Solid" onFocus="getAmt()">
此代码未运行..我缺少什么?
答案 0 :(得分:0)
试试这个:
var amtText = $('#' + '<%=TxtAmt.ClientID%>');
amtText.bind('focus', getAmt()); // using jQuery here
如果您不想使用jQuery(或任何其他JavaScript库),那么您必须使用纯JavaScript。但是,要将处理程序(事件侦听器)附加到浏览器中的事件,您有两种方法:
addEventListener
和removeEventListeners
,或attachEvent
和detachEvent
。有关它的更多信息和示例,请参阅此MDN页。答案 1 :(得分:0)
试一试
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "foc", "document.getElementById('" + TxtAmt.ClientID + "').focus();", true);
当您想要聚焦txt amt时使用上面的代码段,一旦txtamt成为焦点,您的函数将根据提供的比率和数量计算金额值。
如果您发现它有用,请将其标记为您的答案,否则请告诉我......