需要JavaScript语法更正

时间:2012-01-17 17:06:44

标签: c# javascript asp.net

我是JavaScript的新手,我编写了以下小型JavaScript来制作回发函数,但它不起作用。我需要任何人来纠正它。

C#代码:

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            TextBox4.Text = "nopost";
        }
        else
        {
            TextBox4.Text = "post";
        }
    }

JavaScript的:

    <script type="text/javascript">
        function a1(){
        var hid = document.getElementById('TextBox4').Value;
        if (hid == "post") {
            alert('Posted');
        }
        else if (hid == "nopost") {
        alert('Not Posted');
        }
        }
        window.onload == function () {
            a1();
        }
    </script>

ASP代码

    <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>

3 个答案:

答案 0 :(得分:2)

尝试使用ClientID属性并将.Value更改为.value

var hid = document.getElementById('<%= TextBox4.ClientID %>').value;

答案 1 :(得分:2)

您使用==代替=进行onload处理程序分配。

此...

window.onload == function () {
    a1();
}

应该是这个......

window.onload = function () {
    a1();
};

或者只是这个......

window.onload = a1;

答案 2 :(得分:1)

问题可能在于您如何定义onload函数将其更改为:

window.onload = a1;

P.S:在Javascript中使用===运算符进行类型安全比较。