2012-01-08 37 views
1

我正在使用rails 3.1.3,以及jquery.form.js 2.9.4版和jQuery 1.7.1。 我在jquery.form.js中放了一些控制檯打印語句,所以我可以看到(在螢火蟲控制檯中)它已加載。

我建立了我的形式是這樣的:

var options = { 
    success: s.update_or_add_contact_response, type: 'post', 
    dataType: 'json', url: s.update_contact_path 
}; 

$('form#new_user').submit(function() { 
    $(this).ajaxSubmit(options); 
    return false; 
}); 

當我點擊一個按鈕提交我得到在Firebug控制檯以下錯誤消息的形式:

$(本) .ajaxSubmit不是函數

我在這裏做錯了什麼?

回答

0

也許你錯過了document.ready包裝?

$(function() { // same as document.ready 
    var options = { 
     success: s.update_or_add_contact_response, type: 'post', 
     dataType: 'json', url: s.update_contact_path 
    }; 

    $('form#new_user').submit(function() { 
     $(this).ajaxSubmit(options); 
     return false; 
    }); 
}); 
2

我從來沒有使用此功能,但是您的語法根據在文檔看起來是正確的:http://jquery.malsup.com/form/#ajaxSubmit

沒有看到你所有的代碼,我猜你是不是鏈接jQuery插件,或者你沒有包裝你的代碼在$(document).ready(function() { //code });這樣。

看看你的源代碼,並確保插件被鏈接。它在嗎?

將警報置於var options之上。它輸出嗎?

+0

+ 1聽起來像是插件未正確鏈接,或者代碼在加載之前正在執行。 – 2012-01-08 21:57:31

+0

OP:「我在jquery.form.js中放置了一些控制檯打印語句,所以我可以看到(在螢火蟲控制檯中)它已加載。」所以這個問題似乎並不包含在內。 – glortho 2012-01-08 22:51:51

0

我認爲jQuery必須與其他js文件衝突,你可以從here找到一些幫助,在代碼中用jQuery代替$可能會有所幫助。

5

這是新的功能,讓你擁有jQuery的LIB

<script src="http://malsup.github.com/jquery.form.js"></script> 

它會工作後添加其他庫文件.. 我已經測試.. 希望它會爲你工作..

相關問題