在WizardStep激活上运行javascript

时间:2011-05-20 08:56:17

标签: javascript asp.net webforms

我正在尝试在特定的WizardStep变为活动状态后运行一些javascript代码:

<asp:WizardStep ID="wsPaymentMethods" runat="server">

   <!-- some markup goes here -->

   <script type="text/javascript">
       alert('Outer alert');
       Sys.Application.add_load(function () {
           alert('Page loaded alert');
       });
   </script>
</asp:WizardStep>

但实际上这些警报都没有显示出来。这种行为是“按设计”还是某种错误?

现在,我正在那样做:

protected void OrderWizard_ActiveStepChanged(object sender, EventArgs e)
{
    if (OrderWizard.ActiveStep == wsPaymentMethods)
    {
        ScriptManager.RegisterStartupScript(this, this.GetType(), "customerFormInit", "customerFormInit()", true);
    }
}

但我只是想知道为什么WizardStep中的js代码什么都不做。

1 个答案:

答案 0 :(得分:1)

你可以在ActiveStepChanged事件上运行js函数并检查活动步骤索引,如

if(e.ActiveStepIndex==X)
{
    Page.RegisterClientScriptBlock("scripidentifier","your script or call js function");
}