2012-12-03 160 views
0

我有這樣的代碼的jQuery與關閉按鈕

<input type='submit' name='sub_form' value='Save'><a href="#" class="close">Cancel</a>

和jQuery是

$('td.add_text').click(function(e) { 
    $('<img src="images/ajaxLoader.gif" id="loading" style="width:auto;" />').appendTo(".quotation_computation"); 
    //Cancel the link behavior 
    e.preventDefault(); 
    //Get the A tag 
    var ccom = $('input[name=com_code]').val(); 
    var ucom = $('input[name=user_code]').val(); 
    var in_form = $('input[name=in_form]').val(); 
    var ctrack = $('input[name=com_for_track]').val(); 

    $.ajax({ 
     type:"GET", 
     url:"forms/tem.php", 
     data: {uc: ucom, cc: ccom, ct: ctrack, in_f: in_form }, 
     dataType: 'html', 
     target: '.quotation_computation', 
     success: function(data){ 
      $(".quotation_computation").find('img#loading').remove(); 
      $(".quotation_computation").html(data); 
     } 
    }) 
}); 

和關閉按鈕的jQuery

$(".close").click(function() { 
     $(".quotation_computation").hide(); 
}); 

和HTML

<div class="quotation_computation"> 
ANOTHER JQUERY PROBLEM 
</div> 

當我點擊關閉按鈕它不工作。

是我的關閉按鈕有誤嗎? okie當我點擊div class="quotation_computation"> jquery ajax工作正常,它保存到我的數據庫。但是當我點擊Cancel按鈕時,jquery ajax或表單仍然存在。

有什麼我需要改變?

+4

你是否執行你的代碼來在'$(document).ready'中附加click事件? –

+0

什麼是$ .ajax()的「目標」選項?我無法在API文檔中找到它 – devnull69

+0

單擊關閉鏈接時是否收到任何javascript錯誤? – Novocaine

回答

1

單擊<a href="#">定位標記將具有默認操作,即它將強制頁面刷新。您必須防止此默認操作,否則會刷新頁面並重新打開您剛剛隱藏的元素。

$('.close').click(function(e) { 
    $('.quotation_computation').hide(); 
    e.preventDefault(); 
}); 
+2

'href =「#」'不刷新頁面;它只是滾動到頁面的頂部。但是,是的,你應該總是使用'e.preventDefault()'。 –

+0

它刷新Firefox中的頁面:http://jsbin.com/idajaz/1/edit – devnull69

+0

@ devnull69奇怪,這可能是一個jsbin的bug ...不是? – nicolast