日期:2014-05-17  浏览次数:20395 次

服务器端控件调用并post
asp.net 页面有两个按钮,一个按钮btncheck检查数据(与数据库数据对比,如果对比OK, 就将数据post到另一页面,我是想调用 另一个有 PostBackUrl属性的按钮 btnsubmit,有来post数据。

btncheck按钮在后台调用btnsubmit不起作用(但是好象 IE10 可以)。


前台页面:
<asp:Button ID="btncheck" runat="server" Text="check"   onclick="btncheck_Click"   />
 
 <asp:Button ID="btnsubmit" runat="server" Text="submit" onclick="btnsubmit_Click" PostBackUrl="target.aspx" visible="False"/> 

后台:

protected void btncheck_Click(object sender, EventArgs e)

        bool check=checkdata();
        if (check == true)
        {

            btnsubmit_Click(null, null);

        }
        else
        {
            Response.Write("<script language=javascript>alert('不能提交')</script>");

        }
}

protected void btnsubmit_Click(object sender, EventArgs e)
    {
        
    }

------解决方案--------------------
1.前台页面:
<asp:Button ID="btncheck" runat="server" Text="check"   onclick="btncheck_Click"   />
这个用普通的BUTTON标签即可,通过点击BUTTON调用JS函数,检查表单数据。
2,如果数据合法,通过JS调用
第二个按钮<asp:Button ID="btnsubmit" runat="server" Text="submit" onclick="btnsubmit_Click" PostBackUrl="target.aspx" visible="False"/> 
的CLICK方法document.gelementById("btnsubmit").click();

至于你的实现方式,调用方式没错
btnsubmit_Click(null, null);
改成btnsubmit_Click(sender, e);这个试一下