如何将asp控件发送到javascript

时间:2010-06-04 05:30:58

标签: c# .net asp.net javascript

我正在尝试将asp控件(文本框)发送到javascript函数。

onblur="CalculateLossRatio(this.value,<%=txtLossRatioCurrentYear.ClientID%>)"

这是正确的方法。

3 个答案:

答案 0 :(得分:0)

在您的情况下,您可以执行以下操作:

<asp:TextBox ID="TextBox1" onblur="CalculateLossRatio(this.value, 1)" runat="server" />
<asp:TextBox ID="TextBox2" runat="server" Text="7"/>

<script type="text/javascript">

function CalculateLossRatio(arg1, arg2)
{
    if (arg2 == 1)
    {
        var txt = document.getElementById('<%=TextBox2.ClientID%>');
    }
    else if(arg2 == 2)
    {
        // TODO - get other txt...
    }

    alert(arg1 - txt.value);
}

</script>

答案 1 :(得分:0)

那是可以接受的,你实际上在做的是使用预处理器指令

<%=txtLossRatioCurrentYear.ClientID%>将在运行时被生成的控件ID替换,传递this.value将传递控件的引用,但您仍然可以使用var txtbox = document.getElementById(controlid);

答案 2 :(得分:0)

您可以将对发件人的引用直接发送到您的js-function(如果有另一个文本框,则不清楚该问题):

onblur="CalculateLossRatio(this)"

function CalculateLossRatio(txtBox)
{
    if(txtBox != null){
       var text=txtBox.value;
    }
}