javascript的confirm语句如何在C#里执行?

foreverandever 2004-12-01 09:21:57
我用Asp.Net+C#+Javascript编程,现在遇到一点问题,特来请教各位达人^o^
现有一个窗口,里面有save按钮,有一个输入框。
给定一个最大值1000,输入框里的数字如果大于1000,系统就弹出confirm窗口。
按“取消“则不做操作,按“确定”则必须把数据保存到数据库中。
现在的问题就是按了“确定”后怎样保存数据,因为肯定是用C#来写保存数据的方法的。
大家有什么好的方法吗?
...全文
234 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
foreverandever 2004-12-06
  • 打赏
  • 举报
回复
谢谢大家!
lonelydreamsym 2004-12-02
  • 打赏
  • 举报
回复
上面的错了,应该是
save的id号.Attributes.add("onclick","return check_data()");
lonelydreamsym 2004-12-02
  • 打赏
  • 举报
回复
Page_Load里加:
this.save.Attributes.add("onclick","return check_data()");
如果确认了执行save的事件,没的话,什么都不执行
foreverandever 2004-12-02
  • 打赏
  • 举报
回复
不是对数据有效性进行验证,这个asp.net有控件可以验证的。
而是要在按下“save”按钮时比较DataGrid里的所有TextBox里的数据之和与给定的一个最大值。
如果数值之和大于这个最大值,就要弹出确认窗口。
现在我不知道如何去取得DataGrid中的每一行的TextBox里的值。
PPLUNCLE 2004-12-02
  • 打赏
  • 举报
回复
你是要对datagrid里面数据的有效性进行验证吗?
我是说对DataGrid里面的textbox的数据进行有效性验证吧?
PPLUNCLE 2004-12-02
  • 打赏
  • 举报
回复
你是要做数据有效性的验证吗?
PPLUNCLE 2004-12-02
  • 打赏
  • 举报
回复
等下,我给你个实例!
foreverandever 2004-12-02
  • 打赏
  • 举报
回复
我说的是在javascript里取DataGrid中的每一行的TextBox里的值...
谢谢关注!
PPLUNCLE 2004-12-02
  • 打赏
  • 举报
回复
因为textbox放到datagrid里面,经过编译以后,其ID会变化,但是还是有一定规律的
比如下面的模板列:
<asp:TemplateColumn HeaderText="数 量">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:TextBox id=SL Text='<%# DataBinder.Eval(Container.DataItem,"SL") %>' Width="70px" CssClass="tabletxt" MaxLength="10" Runat="server" EnableViewState="False">
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>

经过编译以后,最终显示在页面上的html就会是下面的形式

<input name="WL_WZBM:_ctl3:SL" type="text" value="50" maxlength="10" id="WL_WZBM__ctl3_SL" class="tabletxt" style="width:70px;" />
<input name="WL_WZBM:_ctl4:SL" type="text" value="50" maxlength="10" id="WL_WZBM__ctl4_SL" class="tabletxt" style="width:70px;" />

我现在要验证其是不是数字,可以采用下面的js验证:
funtion Check_Data()
{
var reg=/^([1-9]*[0-9]*|0)$/; //定义验证整型数据的正则表达式。
//遍历页面上所有HTML对象
for(var i=0;i < document.all.length;i++)
{
//首先确定要验证的是text
if(document.all[i].type == "text")
{
var T_ID = document.all[i].id; //得到text的ID
var T_value = document.all[i].value; //得到text的值
//因为模板列SL生成的html的text的ID后面都是"_SL",所以我就判断所有文本框的ID最后三个字符为"_SL"的文本框的值
if(T_ID.substring(T_ID.length-3,T_ID.length)=="_SL" && T_value.length == 0)
{
alert("数据提交失败:您必须为每类物资填写到货数量!");
document.all[i].focus(); //使出错的文本框中的值处于被选中状态
return false;
}
if(T_ID.substring(T_ID.length-3,T_ID.length)=="_SL" && && reg.test(T_value)==false)
{
alert("数据提交失败:到货数量输入不符合规范!");
document.all[i].select(); //使出错的文本框中的值处于被选中状态
return false;
}
//其他文本框验证
return true;
}
}
}
jeffidea 2004-12-02
  • 打赏
  • 举报
回复
Page_Load()
{
BtnSave.Attributes["onclick"]="return check_data()";
}
.aspx
<script>
function check_data()
{
if(num>1000)
return confirm("save?");
else
return true;
}
</script>
PPLUNCLE 2004-12-01
  • 打赏
  • 举报
回复
你那个save按钮是服务器端的吧,在
if(!this.Page.IsPostBack)
{
this.save.Attributes.add("onclick","return check_data()");
}
logicpig 2004-12-01
  • 打赏
  • 举报
回复
支持 meizz(梅花雪) ( )
在 form 里写好了
satans18 2004-12-01
  • 打赏
  • 举报
回复
学习~~~~~~~~~~~~~
foreverandever 2004-12-01
  • 打赏
  • 举报
回复
如果我选择“确定”,怎样继续进行C#的操作呢?
因为我肯定要在BUTTON的CLICK事件里用C#写方法去判断DATAGRID里的TEXTBOX的总和是否大于1000,
如果大于,才要弹出CONFIRM对话框...可是我不知道按了“确定”之后该如何继续C#的方法:(
meizz 2004-12-01
  • 打赏
  • 举报
回复
那你就把这个判断放在form里的onsubmit事件里吧:
<form runat=server onsubmit="return mm(this)">

<script>
function mm(e)
{
//其它的判断你自己写
return confirm('select');
}
</script>
foreverandever 2004-12-01
  • 打赏
  • 举报
回复
回 meizz(梅花雪) :
如果是在DataGrid里的输入框里的值求和,然后再判断呢?这个怎么取呢?
所以肯定不能在button上加onclick事件...
ld_thinking 2004-12-01
  • 打赏
  • 举报
回复
foreach(DataGridItem ii in DataGrid1.Items)
{ string TextValue = ((type)ii.FindControl("???")).Text;}
meizz 2004-12-01
  • 打赏
  • 举报
回复
<form><input name=mm>
<input type=submit onclick="if(mm.value>1000)return confirm('select')">
</form>
foreverandever 2004-12-01
  • 打赏
  • 举报
回复
关键是怎么取得DataGrid中的每一行的TextBox里的值...
MeE 2004-12-01
  • 打赏
  • 举报
回复
</script>
加载更多回复(3)

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧