在ASP.NET中,我如何提示用户进行是/否问题,并将结果返回到我的.ascx文件中?
目前,我可以使用JavaScript打开确认对话框,但无法返回值。但我不知道这是否是正确的方法。
在ASP.NET中,我如何提示用户进行是/否问题,并将结果返回到我的.ascx文件中?
目前,我可以使用JavaScript打开确认对话框,但无法返回值。但我不知道这是否是正确的方法。
confirm()
函数显示弹出窗口,并在用户点击“是”或“否”后进行Post Back。例如:if (confirm('Question')) {
__doPostBack('', 'Yes_clicked');
} else {
__doPostBack('', 'No_clicked')
}
然后在服务器上的Page_Load()
方法中执行:
if (IsPostBack)
{
var result = Request.Params["__EVENTARGUMENT"];
}
你还可以通过将__doPostBack()
函数的第一个参数指定为任何更新面板的ID来异步执行它。
我使用这个。据我所知,它可以防止按钮事件的其余部分执行。
btnMyButton.Attributes.Add("onClick", "return confirm('Are you really sure?')");
你需要使用ajax,或向服务器发起一个postback请求。 你的c#代码在服务端执行,而javascript代码则在客户端执行。 如果你使用asp .net的ajax扩展,你可以使用javascript页面方法:
PageMethods.YourMethod(confirm('your text'), OnSuccess, OnFailure);
另一个选项是显示是/否:
<script>
function AlertFunction() {
if (confirm('Are you sure you want to save this thing into the database?')) {
$('#ConfirmMessageResponse').val('Yes');
} else {
$('#ConfirmMessageResponse').val('No');
}
}
</script>
从 .net 方面处理它:
string confirmValue = ConfirmMessageResponse.Value;
if (confirmValue == "Yes")
{...}
string confirmValue = ConfirmMessageResponse.Value; 在使用 .net 端时,此行代码会出错