怎么实现在服务器封装confirm? 涉及到服务器和客户端的传值和服务端的进程管理等问题...
需求是这样的,
当用户需要录入某一个对象时,
需要对用户进行确认操作,
这个操作是在服务端的c#代码里的。
普通的web程序可能都是js脚本实现很简单,
但在asp.net里由于之前的控件验证都是服务端的
最好还是在服务端实现
我是这么处理的
string script=@"<script>
function sureOver()
{
if(confirm('您确定要完成拟制任务吗?')==true)
__doPostBack('btnOverTask','');
}
</script>";
Page.RegisterClientScriptBlock("BeSure",script);
Page.RegisterStartupScript("msgOver","<script>sureOver();</script>");
return;
在btnOverTask事件里写,实际处理的代码
obj.Over();
这样实现的结果就是,代码太混乱。
如果能把这个confirm封装为服务端函数的话
这段代码就很清晰了
if (isConfirm("您确定要完成拟制任务吗?'"))
{
obj.Over();
}
所以就像把这个confirm封装成一个服务端的函数
public boolean isConfirm(string STR)
{
string script=@"<script>
function sureOver()
{
if(confirm(' " + STR + @"')==true)
__doPostBack('btnOverTask','');
}
</script>";
Page.RegisterClientScriptBlock("BeSure",script);
Page.RegisterStartupScript("msgOver","<script>sureOver();</script>");
//------------------------------------
//-----------------------------------
//---问题就在这儿出现了,用户点了confirm后,怎么把用户点的yes or no 的值
返回到这个函数的这个进程里,返回true or false?
}
因为这个confirm相关的各种验证判断都是服务器端的,所以这个提示才需要做成服务器的函数
不要建议我还说用javascript写了。
谢谢!