javascript重定向确实可以正常工作

javascript重定向确实可以正常工作,javascript,redirect,Javascript,Redirect,我有一个链接,当用户点击它时,它会显示一个确认框。如果用户单击“是”,则会将其引导到指定页面,否则将保持在同一页面上。这是我的链接和功能代码: <script type='text/javascript'> function checkDelete(){ var i = confirm("Are you sure you want to delete?"); if(i){ return true; }else{

我有一个链接,当用户点击它时,它会显示一个确认框。如果用户单击“是”,则会将其引导到指定页面,否则将保持在同一页面上。这是我的链接和功能代码:

<script type='text/javascript'>
   function checkDelete(){
      var i = confirm("Are you sure you want to delete?");
      if(i){
         return true;
      }else{
         return false;
      }
   }
</script>
<a href="operation.php?action=delete&id=<?php echo $id?>" onclick='checkDelete'>Delete</a>

函数checkDelete(){
var i=确认(“您确定要删除吗?”);
如果(i){
返回true;
}否则{
返回false;
}
}

问题是,即使我单击“否”或“取消”按钮,它也不会停留在同一页上。它总是重定向到operation.php页面。但是,如果我在onclick上编写内联javascript代码,即使这样,它也可以正常工作。

您遇到了一些问题:

JavaScript代码
checkDelete
仅引用变量
checkDelete
;它没有进一步的作用。您可能打算调用它,然后返回调用它的结果:

// in onclick
return checkDelete();
if
return
语句一起使用是多余的。只需返回
确认的结果

function checkDelete() {
    return confirm('...');
}
此时,您甚至可以将其内联:

// in onclick
return confirm('...');
通常不赞成使用内联JavaScript。最好从JavaScript绑定事件处理程序。例如,如果您的链接ID为
delete\u link
,则可以使用以下选项:

// should only be run when delete_link exists
// (e.g. in a DOM ready handler or a script after delete_link)
// this code does not accommodate for older versions of Internet Explorer
document.getElementById('delete_link').addEventListener('click', function(e) {
    if(!confirm('...')) {
        e.preventDefault();
    }
}, false);

您有一些问题:

JavaScript代码
checkDelete
仅引用变量
checkDelete
;它没有进一步的作用。您可能打算调用它,然后返回调用它的结果:

// in onclick
return checkDelete();
if
return
语句一起使用是多余的。只需返回
确认的结果

function checkDelete() {
    return confirm('...');
}
此时,您甚至可以将其内联:

// in onclick
return confirm('...');
通常不赞成使用内联JavaScript。最好从JavaScript绑定事件处理程序。例如,如果您的链接ID为
delete\u link
,则可以使用以下选项:

// should only be run when delete_link exists
// (e.g. in a DOM ready handler or a script after delete_link)
// this code does not accommodate for older versions of Internet Explorer
document.getElementById('delete_link').addEventListener('click', function(e) {
    if(!confirm('...')) {
        e.preventDefault();
    }
}, false);
试试
onclick=“return checkDelete();”
。当您尝试使用JavaScript时,使用适当的JavaScript表达式会有所帮助;)

同时,尝试将
checkDelete
更改为:

function checkDelete() {return confirm("Are you sure you want to delete?");}
试试
onclick=“return checkDelete();”
。当您尝试使用JavaScript时,使用适当的JavaScript表达式会有所帮助;)

同时,尝试将
checkDelete
更改为:

function checkDelete() {return confirm("Are you sure you want to delete?");}
尝试:


函数checkDelete(){
var i=确认(“您确定要删除吗?”);
如果(i){
返回true;
}否则{
返回false;
}
}
试试:


函数checkDelete(){
var i=确认(“您确定要删除吗?”);
如果(i){
返回true;
}否则{
返回false;
}
}
标签总是重定向到目标。返回
false
并取消操作的概念仅适用于提交表单时。

标签始终重定向到目标。返回
false
并取消操作的概念仅适用于提交表单时