2016-11-09 27 views
1

我使用一些href選項卡來繪製HTML表格中所有行的按鈕。當用戶單擊行按鈕時,它將使用HTML GET將用戶重定向到具有某些行值的另一個PHP腳本。但在我當前的實現中,當用戶單擊按鈕時,沒有確認。我添加了基本的javascript確認框,但它非常基本,瀏覽器要求停止每次都彈出警報。將bootbox.js確認框添加到href鏈接

所以,而是採用普通的JavaScript我發現庫調用bootbox.js,專門爲CSS提醒和確認框設計。但是,當我使用當前的jQuery實現應用bootbox方法時,它不起作用!

bootbox - bootbox docs

下面是我的代碼:

這是我的HREF代碼,使HTML鏈接

echo "<a href='approveone.php?id=$lvid&empno=$empno&ltype=$leavetype&hmd=$leavehmd&dprtmnt=$empdepartment&adminname=$adminusername' class='btn btn-success btn-xs m-r-1em confirmation' >Approve</a>"; 

這裏是包含bootbox呼叫我的jQuery代碼的一部分。

<script type="text/javascript"> 
    $('.confirmation').on('click', function() { 
      return bootbox.confirm('Are you sure?'); 
    }); 
</script> 
+0

嗨 - 你確實需要得到確認?那麼用戶可以說是或否?我只是想確保你想要bootbox.confirm而不是bootbox.alert。 –

+0

我只想用YES和NO按鈕確認框。當用戶點擊是href應該指向外部的php文件,當按下沒有任何事情應該發生 –

+0

你還包括bootbox的依賴關係,我的意思是bootstrap和jQuery? –

回答

3
  1. 你應該避免點擊鏈接的默認行爲(否則瀏覽器將您重定向到該鏈接)。
  2. confirm函數應該接收回調函數(處理確認的結果)。

檢查這個例子:

$('.confirmation').on('click', function (e) { 
 
    e.preventDefault(); 
 
    href = $(this).attr('href'); 
 
    return bootbox.confirm('Are you sure?', function(result) { 
 
    if (result) { 
 
     window.location = href 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script type='text/javascript' src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script> 
 
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet"> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.11.2/css/bootstrap-select.min.css"> 
 

 

 
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/4.4.0/bootbox.min.js"></script> 
 

 
<a href='approveone.php?id=$lvid&empno=$empno&ltype=$leavetype&hmd=$leavehmd&dprtmnt=$empdepartment&adminname=$adminusername' class='btn btn-success btn-xs m-r-1em confirmation' >Approve</a>

+0

你可以只用'this.href',而不是'$(本).attr(「href」屬性);' –

+0

@Guedes,你是正確的,但是我通常喜歡使用jQuery來處理與DOM元素/屬性工作(如果我已經擁有它)。 – Dekel

+0

@Dekel謝謝你的解決方案! –