将变量放入return confirm()中

本文关键字:confirm return 变量 | 更新日期: 2023-09-27 18:11:34

我有一个按钮

<asp:Button ID="btnPresent" runat="server" OnClientClick="return confirm('N student Absent?');"  />

我想用一个服务器端变量(lstAbsent.Count)替换这个"N"

I have Tried

<asp:Button ID="btnPresent" runat="server" OnClientClick="return confirm("+lstAbsent.Count+" student Absent?');"  />

<asp:Button ID="btnPresent" runat="server" OnClientClick="return confirm(''"+lstAbsent.Count+"' student Absent?');"  />

但它不工作.....我错过了什么?

将变量放入return confirm()中

你可以这样定义JS函数:-

 function confirmStudentsMsg()
 {
     var studentsAbsent = '<%= lstAbsent.Count %>';
     return confirm(studentsAbsent + ' student(s) absent?');
 }

然后,简单地调用它从你的按钮点击:-

<asp:Button ID="btnPresent" runat="server" OnClientClick="return confirmStudentsMsg();" />

您需要在代码隐藏中设置OnClientClick

 btnPresent.OnClientClick = 
   string.Format("return confirm('{0} student Absent?');", lstAbsent.Count);

不幸的是,不可能在服务器端控件的属性上使用内联代码块<%= %>。(这条规则有一个例外,那就是你可以<asp:Repeater><asp:GridView>等控件的属性上使用数据绑定内联代码块<%# %>)