2013-03-29 68 views
0

我有一個小問題:Javascript和jQuery的停止事件

我有一個行()的一個表,並在最後一欄設置我有打開一個確認彈出一個鏈接一個jQuery onclick事件(問我是否確定要做那個bla bla ......)。如果我點擊鏈接,彈出窗口會打開,如果我按否,它應該保留在當前頁面上,但是它會繼續處理該行中的事件(該點擊被觸發)。你怎麼看?

鏈接:

<tr class="clickableRow" id="someId"> bgcolor="color"> 
    .......... 
    <td> 
    <a href="javascript:void(0)" onClick="javascript:del_prompt('url');">      <img src="images/delete.png" border="0"></a> 
</td> 
</tr> 

的Javascript:

$(".clickableRow").click(function() { 
    window.open("companynewestimate.php?id="+this.id,"_parent"); 
    }); 

德爾功能

<script language="javascript"> 
function del_prompt(id) 
{ 

     if(confirm ("Are you sure you want to delete selected Record")){ 
      location.href = "companyopenestimates.php?act=del&id="+id; 
      } 
     else{ 
      return false; 
     } 

     } 



</script> 
+0

聽起來像沒有從點擊處理程序返回false是問題。但不能確定沒有看到你的代碼。 – techfoobar

+0

我想觸發彈出窗口,之後,如果我點擊否,不按照jquery事件...我已經發布了一些代碼...謝謝 – Gigg

回答

2

如果沒有一些代碼,它很難得到正確的答案。但是,也許這會有所幫助:

$("#element").on("click",function(e){ 
    //do something 
    e.preventDefault(); 
    e.stopPropagation(); 
    }) 

在這裏看到: http://api.jquery.com/event.stopPropagation/

+0

我想觸發彈出窗口,之後,如果我點擊否,不是遵循jquery事件... – Gigg

+0

是的,所以你仍然可以使用preventDefault和stopPropagation。如果用戶點擊否,您可能會觸發新的點擊事件。 順便說一句,使用彈出窗口實際上並不是一個好主意。也許覆蓋會更好。或者一個警告框或其他東西。 – Christian

0

更改您鏈接的onclick應該做的伎倆:

onClick="del_prompt('<?=$line['id_est']?>'); return false;" 

注意,javascript:完全沒有必要的。

+0

已經試過了:(不工作 – Gigg

+0

你可以發佈你的'del_prompt()'函數嗎?也許問題出在那裏。 – techfoobar

+0

是的,我發佈了。謝謝 – Gigg