我在UpdatePanel中有一个转发器,并且它是一个链接按钮,需要在隐藏的div中设置一些值(显示无),然后调用使该div可见的javascript方法。
我正在使用ScriptManager.RegisterStartupScript并且它正在调用js方法,但问题是代码背后的代码被覆盖 - 代码背后的代码是为数据库中的某些字段设置值(在隐藏的div中)并且在它出现后显示字段是空的。如果我在updatepanel中单击转发器中的其他按钮,则会显示div,其中包含为上次单击设置的值。 (客户的要求是他们点击转发器中的记录,他们可以在模态对话框中更改它。)
如何获取javascript方法以使模态对话框显示正确的值?
当前代码在转发器链接按钮
的oncommand事件中是这样的 ...
txtName.Text = row.Name;
ScriptManager.RegisterStartupScript(this, typeof(string), "showEdit", "showModalPanel('pnEdit')", true);
答案 0 :(得分:0)
我最近遇到了一些问题,让ScriptManager.RegisterStartupScript使用UpdatePanel处理部分回发。尝试切换代码以使用类似的东西......
ScriptManager.RegisterClientScriptBlock(updPnl, updPnl.GetType(), updPnl.ClientID, "alert('hello world';", True)
您还可能必须在每次单击时手动更新UpdatePanel,以便隐藏的div获取刷新的值。为此,您必须将UpdatePanel上的UpdateMode设置为Conditional,然后确保在需要代码隐藏时再返回并手动更新它。