的目的是要表明一種形式,將更新頁面上的分度,結果jQuery插件衝突 - 請幫助
- 負荷這個[page]
- 點擊linkto形式展現
- 提交表格
提交時,如果窗體已隱藏,結果不會顯示在div中。
將在下面回答問題建議的代碼後,我將展示形式,它被提交,但數據不會在div出現我給給ajaxForm爲目標
[Here]是的這確實顯示的結果在div
感謝
的目的是要表明一種形式,將更新頁面上的分度,結果jQuery插件衝突 - 請幫助
提交時,如果窗體已隱藏,結果不會顯示在div中。
將在下面回答問題建議的代碼後,我將展示形式,它被提交,但數據不會在div出現我給給ajaxForm爲目標
[Here]是的這確實顯示的結果在div
感謝
當您提交表單,請求被髮送到服務器,並獲得一個HTTP錯誤:405 Method Not Allowed
。
它看起來像來自您的服務器的配置。 http://www.checkupdown.com/status/E405.html
編輯:爲你的代碼適用於您的例子在facy.html頁,我認爲它並沒有真正來自服務器。這兩個示例的區別在於動作的形式。
你嘗試打電話給你謝謝頁 「thanks.php」 和相應地修改表單的動作。我想你的服務器可能不允許在HTML頁面上發佈POST請求。
在不工作,如果你綁定給ajaxForm當顯示形式的例子相同的形式它應該可以正常工作。
// you may want to use better/faster selector then 'a' but in this example it
// will work
$('a').click(function() {
$('#feditform').fadeIn('slow').ajaxForm(options);
return false;
});
添加上面而不是jQuery.facybox({ div: '#formDiv' }); return false
它應該按預期工作。
聽起來不錯。然而,當我在http://plungjan.name/eetest/facy1.html上實現它時似乎不起作用 - 它也會成爲一個問題,它在每次點擊時都會執行ajaxForm?謝謝! – mplungjan 2010-08-31 07:43:11
至於我可以看到你現在有:
<div id="formDiv" style="display:none"> some other code here </div>
,但你還是叫$('#feditform').fadeIn('slow').ajaxForm(options);
,據我所看到和了解的jQuery,這將永遠不會出現的,因爲周圍div是display:none
。我建議做三兩件事:
hide()
和show()
,這將避免一些麻煩動畫簡化代碼。如果這可行,您可以繼續並再次介紹動畫版本。(document).ready
函數中的內容,以便您可以依賴這些函數。我們對'混合'方法(硬編碼和通過jQuery)有不良的體驗,特別是關於顯示和隱藏情況。$
。在這些情況下,我們傾向於使用關鍵字jQuery
,因爲這將始終保持範圍。希望這會有所幫助。
謝謝,我在表格中淡出,而不是表格div。顯示窗體併發生一些AJAXING,但目標div不會更新結果。看到我修正的問題。謝謝 – mplungjan 2010-09-01 06:51:22
查看文檔可能有助於將'var options'部分直接放在'(document).ready'後面並作爲第一部分。如果你不這樣做,可能是jQuery中的DOM鏈被破壞了。沒有測試過它。只是一個猜測。 – mic 2010-09-01 20:56:14
不 - 我從沒有預料到警報顯示。但我猜目標div可能超出範圍 - http://www.plungjan.name/eetest/facy3.html實現您的建議 – mplungjan 2010-09-02 06:27:54
這些數據確實在您發佈的鏈接中顯示。
如果你認爲這是對插件衝突嘗試jquery.noConflict() http://api.jquery.com/jQuery.noConflict/
雖然不是最完美的解決方案有關。它可以輕鬆解決您與插件存在的任何衝突。
如果你點擊鏈接並從http://plungjan.name/提交表格eetest/facy2.html你在頁面中的div內獲得了轉儲形式? – mplungjan 2010-09-03 08:22:24
我不確定,但可能是你的初始形式與錯誤的ID?
$('#formDiv').fadeIn('slow').ajaxForm(options)
當表單ID是feditform
。而在正確的示例位於http://plungjan.name/eetest/facy.html$('#feditform').ajaxForm(options);
DOH。謝謝現在發生。但它並沒有顯示任何內容。從動作返回時目標div是空白的。 我已將表單操作更改爲僅加載文本「謝謝」,但未顯示 – mplungjan 2010-09-04 06:11:29
注意:我使用Firebug擴展來查看此錯誤。我建議你用Firefox和這個擴展名嘗試一下:http://getfirebug.com/ – Ben 2010-09-06 09:08:26
我其次,看起來像本已經解決了這個問題。 – dpq 2010-09-06 10:37:33
謝謝。那樣做了。出於某種原因,我的「DUMP.php」在這裏不起作用。 – mplungjan 2010-09-11 06:56:56