C# javascript确认值不工作

C# javascript确认值不工作,c#,javascript,asp.net,C#,Javascript,Asp.net,我有一个确认和警报消息框。 两者都在正确的时间展示 但在确认框中,当我按下取消按钮时,applyaction按钮将被执行,当我返回false时,不会发生这种情况 警报框的情况与此类似,它返回false,但仍在执行applyaction按钮 这是我的密码: protected void Page_Load(object sender, EventArgs e) { ApplyAction_Button.Attributes.Add("oncli

我有一个确认和警报消息框。 两者都在正确的时间展示

但在确认框中,当我按下取消按钮时,applyaction按钮将被执行,当我返回false时,不会发生这种情况

警报框的情况与此类似,它返回false,但仍在执行applyaction按钮

这是我的密码:

   protected void Page_Load(object sender, EventArgs e)
    {
                    ApplyAction_Button.Attributes.Add("onclick", "ShowConfirm();");
}

   protected void ApplyAction_Button_Click(object sender, EventArgs e)
    {
       // Action to be applied
    }
JS功能:

    function ShowConfirm() {
      //check if checkbox is checked if is checked then display confirm message else display alert message
      var frm = document.forms['aspnetForm'];
      var flag = false;
      for (var i = 0; i < document.forms[0].length; i++) {
          if (document.forms[0].elements[i].id.indexOf('Select_CheckBox') != -1) {
              if (document.forms[0].elements[i].checked) {
                  flag = true
              }
          }
      }

      if (flag == true) {
          if (confirm("Are you sure you want to proceed?") == true) {
              return true;
          }
          else {
              return false;
          }
      } else {
      alert('Please select at least Checkbox.')
      return false;
      }
  }

感谢

当您在asp服务器控件上有一个客户端事件,该事件包含一个服务器事件,并且两个事件都用相同的操作触发时,在客户端返回true或false不会阻止它执行其服务器事件


您可以尝试通过在javascript代码中执行某种类型的回发来阻止按钮的服务器事件执行。

当asp服务器控件上有一个客户端事件,该事件有一个服务器事件,并且两个事件都用同一操作触发时,在客户端返回true或false不会阻止它执行其服务器事件


您可以尝试通过在javascript代码中执行某种回发来阻止按钮的服务器事件执行。

请..您能给我看一个确认取消的回发吗。thanks@user175084在asp.net中,可以使用uu doPostBackstring EventTarget,string EventArgument;执行js回发;。EventTarget可以帮助您确定服务器代码中的回发原因请..您能给我看一个确认取消的回发吗。thanks@user175084在asp.net中,可以使用uu doPostBackstring EventTarget,string EventArgument;执行js回发;。EventTarget可以帮助您确定是什么原因导致了服务器代码中的回发(暂且不提:您可以通过说return confirm…)来简化JS。。。;而不是在if语句中测试确认函数的返回值。是的,就是这样。。。我怎么可能看不到。。对不起,等了这么久,什么?我不是说你现有的代码是错误的——我所说的这一点不应该引起任何问题——我只是说你可以简化。这同样适用于if flag==true-您可以说if flag或if!如果测试为false,则标记。可能user175084表示所需的修复程序在C代码中,即ApplyAction_Button.Attributes.Addonclick,**return**ShowConfirm;;首先,我差点把它作为一个答案发布出来,但尽管这是使用普通内联事件处理程序所做的,但我不知道Asp.Net的这种风格是如何工作的,所以我不知道。顺便说一句:你可以通过说return confirm来简化你的JS。。。;而不是在if语句中测试确认函数的返回值。是的,就是这样。。。我怎么可能看不到。。对不起,等了这么久,什么?我不是说你现有的代码是错误的——我所说的这一点不应该引起任何问题——我只是说你可以简化。这同样适用于if flag==true-您可以说if flag或if!如果测试为false,则标记。可能user175084表示所需的修复程序在C代码中,即ApplyAction_Button.Attributes.Addonclick,**return**ShowConfirm;;首先,我差点把它作为一个答案发布出来,但尽管这是使用普通内联事件处理程序所做的,但我不知道Asp.Net的工作方式,所以我没有。