【问题标题】:No response when call button click in javascript在javascript中单击呼叫按钮时没有响应
【发布时间】:2013-07-31 19:42:16
【问题描述】:

早安,

我有一个 aspx 包含一个 ID 为 button1 的按钮,以下是我的 aspx 代码:

<div>
<asp:LinkButton ID="lnkView" CommandName="VIEW" runat="server">View</asp:LinkButton>
<asp:Button ID="button1" runat="server" Text="OK" onclick="button1_Click" />
</div>
/*
some code here
*/
<script>
function test()
            {
                document.getElementById("<%=button1.ClientID %>").click();
alert("hello");
    return true;
            }
</script>

以下是我背后的aspx代码:

//some code here
lnkView.Attributes.Add("onclick", "return test()");
//some code here

protected void button1_Click(object sender, EventArgs e)
    {
        ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Javascript", "<script>alert('Record Added Successfully')</script>", false);     
    }

如您所见,我的 linkView 链接按钮在单击时有一个 JavaScript 函数 test()。 我可以通过单击 Button1 来提醒“已成功添加记录”。 但是,当我点击linkView链接按钮时,“记录添加成功”没有提示,它只提示“你好”。

我认为我对某些编程概念有误解。 好心提醒。 谢谢。

【问题讨论】:

    标签: c# javascript code-behind


    【解决方案1】:

    这将在代码后面触发事件。

    在您的 .aspx 页面中试试这个:

    //代码:

    <script type="text/javascript">
    function test(parameter)
    {
      __doPostBack('button1_Click', parameter)
    }
    </script>
    

    【讨论】:

      【解决方案2】:

      您可以通过返回 false 而不是 true 作为函数 test() 的结果来解决此问题。这样,您将取消 ID 为 lnkView 的链接的默认行为,即发送表单

      【讨论】: