在ASP中无法使用RegisterStartupScript收集JavaScript var值.净c#



我想在ASP中使用JS收集动作响应。净c#。在ASP上。. NET按钮单击I am doing following

ASPX页面按钮

<asp:Button ID="btn_add" runat="server" CssClass="button btn-entry"
                        Text="Add" OnClick="btn_add_Click"

在btn_add_Click中,我有

bool continue_ = isEmpty_InputForm(input_form_index);
        if (!continue_)
        {
            Page.ClientScript.RegisterStartupScript(this.GetType(), 
                "onclick", 
                "<script type="text/javascript">"
                + " var action_res = document.createElement("INPUT");"
                + " action_res.type = "hidden";"
                + " action_res.name = "action_res";" 
                + " action_res.value = null;"
                + " if (confirm('Are you sure?')) {"
                + " action_res.value = 'Yes';"
                + " }"
                + " document.forms[0].appendChild(action_res);"
                //+ "confirm('Are you really sure?');"
                + " </script>", 
                false);
        }

然后收集action_res JS变量的值,我正在做以下操作

string action_res = Request.Form["action_res"];

页面给我确认弹出只是很好,但action_res值始终是null !

我是新的JS,有人可以帮助我发现错误,请。

可以这样考虑—如果发布的页面正在生成该脚本,则服务器代码不会等待来自确认对话框的信息。它总是空的,因为服务器不知道var action_res;在回复之前还没有建立。也许用JavaScript处理客户端的确认,在你的页面上设置一个隐藏的输入(input id="confirmation_res" type="hidden" runat="server" />),并在你的c#代码中调用string action_res = action_res.Value; ?

相关内容

  • 没有找到相关文章

最新更新