我在添加到代码隐藏中的一些 javascript 时遇到问题。我在这里试图实现的目标是在页面加载上进行另一个回发。现在,你可能会觉得这很奇怪,但我的疯狂是有办法的。
在我的 ASP.Net 向导中,我有一个文本框,其中包含从另一个步骤填充的日期。然后,该日期用于用财务信息填充 3 个其他控件。有必要在此步骤的负载上填充这 3 个其他控件。现在我试图简单地做 on page_load
,但这不起作用,因为某些控件不存在或日期不在文本框中。我也尝试在该page render
方法上执行此操作,但出于相同的原因,这也不起作用。
因此,我求助于使用 javascript 执行双重回发,但这会导致各种问题。
这是 Page_Load 的代码:
Dim validateFinancial as String = "<script language='javascript'>window.onload = function() ( ValidateFinancialDate() { __doPostBack('<%= UpdatePanel2.ClientID %>'); return false; })</script>"
Page.ClientScript.RegisterStartUp(Me.GetType(), "MyScript", validateFinancial, false)
它没有触发,并且在浏览器左下角的 javascript 错误框中显示缺少“;”。如果我删除 javascript 代码并简单地将其添加到带有字符串中函数名称的标记中,它将出现错误,但是当发布到网络服务器时会导致 AJAX 控件在整个页面上失败。
请问有没有办法让这个工作?