2012-12-14 43 views
1
echo"<td> <a href ='del.php?id=$id' onclick='return confirm('Are you sure?');'><center>Delete</center></a></td>"; 

我想要一個提示信息,因爲用戶點擊「刪除」,如果他/她會按「確定」,那麼它將重定向到一個頁面,數據將被刪除,如果他/她會按「取消」,則不會發生任何事情。 通過使用上面的代碼我不能得到我的提示框nd數據直接被刪除。JavaScript確認框不在php中工作

回答

5

您在這裏混合了'"

echo "<td> <a href ='del.php?id=$id' onclick='return confirm(\"Are you sure?\");'><center>Delete</center></a></td>"; 

您的代碼會輸出這樣的:

<td> 
    <a href ='del.php?id=123' onclick='return confirm('Are you sure?');'><center>Delete</center></a> 
</td> 

即使從戰略目標語法高亮,你可以看到,有一些錯誤的onclick處理。你在其他'裏面有'。所以在這一點上,你應該用"替換內部的'。要在PHP中執行此操作(同時您也有圍繞"),只需使用\"代替即可跳過內部"

+0

仍然有數據正在被刪除,但提示框沒有出現... – user1903239

+0

@ user1903239在[[fiddle](http://jsfiddle.net/7xsXR/)中有效)。 – Sirko

0

這與PHP無關。 a標記的onclick處理程序不會阻止瀏覽器更改位置。你可以做這樣的事情,而不是:

echo"<td> <a href='javascript:void' onclick='if (confirm(\"Are you sure?\")) window.location=\"del.php?id=$id\";'><center>Delete</center></a></td>"; 
+0

仍然有數據被刪除,但提示框沒有出現... – user1903239

+0

有一個輕微的錯字。再次嘗試代碼... –

0

要刪除的複雜性,你可以爲代碼:

$confirm="return confirm('Are you sure?');"; 
echo "<td> <a href ='del.php?id=$id' onclick='$confirm'><center>Delete</center></a></td>"; 

OR

echo "<script> function isConfirm() { if(!confirm('Are you sure?')) return false;}"; 
echo "<td> <a href ='del.php?id=$id' onclick='return isConfirm()'><center>Delete</center></a></td>"; 
0
echo"<td><a href ='del.php?id=$id' onclick=\"return confirm('Are you sure?');\"><center>Delete</center></a></td>"; 

你錯過了雙引號的onclick = \」 \「;

由於單引號,程序未檢測到您的確認框>> onclick ='return confirm('Are you sure?');'