2011-06-27 52 views
0

傢伙我越來越瘋了,我不明白爲什麼這不起作用假的(它總是這樣!)jQuery的,回報提交不工作

 //add new folder 
     $("#add_folder_form").submit(function(event){ 

      var folder_name = $(this).find([name="folder_name"]).val(); 
      var post_string = "folder_name="+folder_name+"&path="+path; 
      $.ajax({ 
       type : "POST", 
       url: "/admin/controllers/add_new_folder,php", 
       data : post_string, 
       success: function(response){ 

        if (response){ 
         event.preventDefault(); 
        } 
        else { 
         event.preventDefault(); 
        } 
       } 
      }) 


event.preventDefault(); 
     }); 

HTML

<form id="add_folder_form" action="" method="post"> 
    New folder <input style="width: 400px" name="folder_name" type="text" /> 
    <input type="submit" id="add_folder_form_send" value="save"/> 
</form> 

我也嘗試在上使用click #add_folder_form_send並使用return false;在函數的底部。它總是提交!

+0

什麼是如果y的中頻(響應)的點無論如何你在這兩種情況下都這樣做? –

回答

2

嘗試......

$('selector').submit(function(event){ 
    event.preventDefault(); 
    ....// your ajax code here... 
    return false; 
}) 

因爲當你打的preventDefault();該頁面已經重新加載你......這是爲時已晚進行任何腳本行爲......

+0

問題是find([name =「folder_name」])顯然是不正確的 –

+2

哦是的應該是「find(」[name = folder_name]「)」...但仍然應該使用event.preventDefault();第一件事:)我從來沒有見過這麼多的錯誤在這麼小的腳本哈哈:)但祝你好運:) – Val

0

嘗試

return false; 

,而不是

preventDefault(); 
1

ü添加「」變化至 '。'在下面的文本add_new_folder,phpadd_new_folder.php

+0

這是一個很好的觀點,但他說,他不能阻止瀏覽器提交表單... :) – Val

2

是你的JavaScript拋出任何錯誤(檢查控制檯 - 設置它打破錯誤)?

這行看起來很可疑(逗號而不是點)

url: "/admin/controllers/add_new_folder,php", 
1

的也許是因爲這個:

/admin/controllers/add_new_folder,php 

...以一個點,它會給你這個替換逗號:

/admin/controllers/add_new_folder.php 
-1
return function(event){event.preventDefault();}/*return false*/