我想在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;
?