2012-11-30 27 views
1

我正在嘗試設置我的表單,以便根據body類來更改動作。基於body類的jquery更改表單動作

表格設置 -

<form action="basicURL" method="post" id="quoteForm"> 

jQuery的設置 -

if ($('body').hasClass('hosting')) { 
$('#quoteForm').attr('action', 'hostingURL'); 
} 

一切我已經看到了似乎表明它應該是工作,但事實並非如此。

+1

取決於何時何地執行你的代碼上。即文件完成加載。 – Musa

回答

1

您的代碼確實有效。

您需要將JQuery包裝在一個準備就緒的函數中,以確保它在繪製頁面後加載。

$('document').ready(function() { 
    if ($('body').hasClass('hosting')) { 
     $('#quoteForm').attr('action', 'hostingURL'); 
    } 
}); 

這裏是一個工作fiddle

+0

這也不起作用。我注意到函數中有一個小錯字,但我解決了這個問題,但仍然沒有運氣。 –

+0

@MollyCampbell是的,爲了確保我解決了所有錯別字,我創建了一個工作小提琴並複製過來。如果您運行提琴然後檢查提交按鈕,您可以看到表單操作已更改。 – Malkus

+0

好的,我明白了。謝謝。我正在查看我的網站上的頁面源代碼,並且操作URL沒有更改 - 但是如果我檢查該按鈕,它會被更改。任何想法爲什麼會這樣? –