Javascript onclick=“confirm()”取消按钮不工作

Javascript onclick=“confirm()”取消按钮不工作,javascript,jquery,html,asp.net-mvc-4,button,Javascript,Jquery,Html,Asp.net Mvc 4,Button,我有一个网格,在那个网格中,对于我保持活动/非活动状态的特定记录。 这是该状态的视图 当我单击“活动”按钮时,它将显示此警报消息 但是,当我点击“取消”按钮时,我无法停止将处于活动状态的操作 这是此活动/非活动按钮的html代码段 @if (item.Status == true) { <button class="btn btn-xs active btn-primary" data

我有一个网格,在那个网格中,对于我保持活动/非活动状态的特定记录。 这是该状态的视图

当我单击“活动”按钮时,它将显示此警报消息

但是,当我点击“取消”按钮时,我无法停止将处于活动状态的操作

这是此活动/非活动按钮的html代码段

   @if (item.Status == true)
                       {
                           <button class="btn btn-xs active btn-primary" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="confirm_active()">Active</button>                       
                            <button class="btn btn-xs inactiveColor btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="confirm_inactive()">Inactive</button>

                       }

                       else
                       {
                           <button class="btn btn-xs btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="confirm_active()">Active</button>                       
                           <button class="btn btn-xs inactiveColor btn-primary active" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="confirm_inactive()">Inactive</button>

                           }
这是警报消息的脚本部分

<script type="text/javascript">
function confirm_active() {
    var retVal = confirm("Are you sure you want to change the status to Active?");
    if (retVal == true) {
        // do stuff
        return true;
    } else {
        return false;
    }
}

function confirm_inactive() {
    var retVal = confirm("Are you sure you want to change the status to Inactive?");
    if (retVal == true) {
       // do stuff
        return true;
    } else {
        return false;
    }
}
如何使cancel按钮可用?您在onclick处理程序中错过了return语句。作为补充说明,最好使用分号结束函数调用

改变

同样的情况也适用于确认非活动。

您在onclick处理程序中遗漏了return语句。作为补充说明,最好使用分号结束函数调用

改变


同样的情况也适用于确认处于非活动状态。

如果使用onclick函数返回任何值,则必须在这里的函数之前写入return

   @if (item.Status == true)
                       {
                           <button class="btn btn-xs active btn-primary" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="return confirm_active()">Active</button>                       
                            <button class="btn btn-xs inactiveColor btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="return confirm_inactive()">Inactive</button>

                       }

                       else
                       {
                           <button class="btn btn-xs btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="return confirm_active()">Active</button>                       
                           <button class="btn btn-xs inactiveColor btn-primary active" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="return confirm_inactive()">Inactive</button>

                           }
您还可以在html中编写直接确认

                           <button class="btn btn-xs btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick='confirm("Are you sure you want to change the status to Inactive?")'>Active</button>                       

若您使用返回任何值的onclick函数,则必须在函数之前写入return

   @if (item.Status == true)
                       {
                           <button class="btn btn-xs active btn-primary" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="return confirm_active()">Active</button>                       
                            <button class="btn btn-xs inactiveColor btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="return confirm_inactive()">Inactive</button>

                       }

                       else
                       {
                           <button class="btn btn-xs btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick="return confirm_active()">Active</button>                       
                           <button class="btn btn-xs inactiveColor btn-primary active" data-HEI_ID = "@item.HEI_ID" data-status = "false"  onclick="return confirm_inactive()">Inactive</button>

                           }
您还可以在html中编写直接确认

                           <button class="btn btn-xs btn-default" data-HEI_ID = "@item.HEI_ID" data-status = "true"  onclick='confirm("Are you sure you want to change the status to Inactive?")'>Active</button>                       

您需要向创建此事件的元素返回值。您在单击该元素时调用函数,该元素如何知道该函数的返回值。因此,您需要在单击时使用“返回”“确认”“非活动”,而不是“确认”“非活动”

使用confirm_inactive就像

function onClick(){
   confirm_inactive()
}
返回确认_inactive类似于

function onClick(){
   return confirm_inactive()
}
在第一种情况下,即使confirm\u inactive返回一些内容,当您调用onClick时,也会得到未定义的内容。 但在第二种情况下,当您调用onClick时,它调用confirm_inactive并返回其结果


此示例只是为了理解问题所在。

您需要将值返回给创建此事件的元素。您在单击该元素时调用函数,该元素如何知道该函数的返回值。因此,您需要在单击时使用“返回”“确认”“非活动”,而不是“确认”“非活动”

使用confirm_inactive就像

function onClick(){
   confirm_inactive()
}
返回确认_inactive类似于

function onClick(){
   return confirm_inactive()
}
在第一种情况下,即使confirm\u inactive返回一些内容,当您调用onClick时,也会得到未定义的内容。 但在第二种情况下,当您调用onClick时,它调用confirm_inactive并返回其结果


此示例只是为了理解问题。

您没有在标记中返回值。您没有在标记中返回值。您好,谢谢您的回答,但我以前尝试过,它给出了相同的结果,“取消”按钮不适用于此方法,请再次尝试,调试代码以查看是否返回false。另外,请确保您没有任何javascript错误,因为有时return语句的拼写错误会导致不需要的结果。Hi,谢谢您的回答,但我以前尝试过这个方法,它给出了相同的结果,“取消”按钮在这种方法中不起作用,请再次尝试,调试代码以查看是否返回false。还要确保没有任何javascript错误,因为有时错误的return语句拼写会导致不需要的结果