【发布时间】:2014-02-13 11:50:27
【问题描述】:
我正在使用以下代码..
- 当我点击链接时,javascript
Hello()函数被调用 - 我想用
window.location.href - 但是当我使用下面这个
__doPostBack('Button2_Click')时,它不起作用。 -
但是,当从以下代码中删除
window.location.href时,__doPostBack('Button2_Click')确实有效。<script type="text/javascript"> function Hello(clicked_id) { var abc = "http://localhost:2621/OrgChart.aspx?id" + clicked_id; window.location.href = abc; __doPostBack('Button2_Click'); return false; } </script> <a id="A1" href="javascript:Hello();">LINK</a>
这是我的代码背后的代码...
public partial class WebForm17 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ClientScript.GetPostBackEventReference(this, string.Empty);//This is important to make the "__doPostBack()" method, works properly
if (Request.Form["__EVENTTARGET"] == "Button2_Click")
{
//call the method
Button2_Click(this, new EventArgs());
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Label1.Text = "Method called!!!";
EmpInfo emp = new EmpInfo();
DA_EmpInfo da_emp = new DA_EmpInfo();
List<EmpInfo> lei = da_emp.GetAllEmployeeInfoByEmpId("MJ-IB-1");
DetailsView1.DataSource = lei;
DetailsView1.DataBind();
}
}
【问题讨论】:
-
window.location.href 更改页面,因此当前在页面上运行的任何异步函数都将中止。
标签: javascript jquery asp.net .net