2014-01-06 61 views
2

我想顯示一種消息,寫作是你確定...... 我可以顯示信息,但用戶點擊NO return false;沒有工作JavaScript的confirm函數返回false

<script> 
function askCar(){ 
    var answer = confirm ("Are you sure for deleting car ?"); 
    if (answer){ 

    } 
    else{ 
    return false; 
    } 
} 
</script> 

我調用函數的onclick這裏

echo '<td><a onclick="askCar()" href="arac-sil.php?sid='.$data["Car_ID"].'" class="ico del">Sil</a><a href="arac-duzenle.php?did='.$data["Car_ID"].'" class="ico edit">Düzenle</a></td>'; 
+4

你知道你可以做陰性條件嗎?例如。 'if(!answer)return false' – elclanrs

回答

10

您需要使用的返回值:

<a onclick="return askCar();" ... > 

只需在onclick內執行該功能,但實際上取消點擊,則需要使用返回值。

而且,代碼可以稍微優化:

function askCar(){ 
    return confirm ("Are you sure for deleting car ?"); 
} 

無需在if..else的時候就可以直接返回對話框結果。 (當然,除非你要進行關節外操作)

+0

你的回答絕對正確,但是在某些情況下頁面上有很多腳本(或者與腳本兼容的情況下),它只會與塊一起工作:else {else} { return false; } – Alex

+0

@Alex不確定你的意思。當使用「返回」時,如果沒有任何意義 - 除非我錯過了某些東西。隨時在聊天中詳細說明,你應該看到「開始一個新房間」按鈕[這裏](http://chat.stackoverflow.com/users/447356/shadow-wizard)。 –

1

您需要添加return也:

echo '<td> 
    <a onclick="return askCar()" href="arac-sil.php?sid='.$data["Car_ID"].'" class="ico del">Sil</a> 
    <a href="arac-duzenle.php?did='.$data["Car_ID"].'" class="ico edit">Düzenle</a> 
    </td>'; 
1

onclick功能需要使用return值:

echo '<td> 
     <a onclick="return askCar()" href="arac-sil.php?sid='.$data["Car_ID"].'" class="ico del"> 
      Sil 
     </a> 
     <a href="arac-duzenle.php?did='.$data["Car_ID"].'" class="ico edit"> 
      Düzenle 
     </a> 
     </td>'; 
0

當您使用return在您的功能定義中,您必須在您要呼叫的地方使用return。否則,你不會得到正確的結果。所以,最好的代碼將會低於

echo '<td><a onclick="return askCar()" href="arac-sil.php?sid='.$data["Car_ID"].'" class="ico del">Sil</a><a href="arac-duzenle.php?did='.$data["Car_ID"].'" class="ico edit">Düzenle</a></td>';