我有一個網站,它有一個基於jQuery的滑塊Awkward Showcase。在jQuery滑塊中使用表單的Rails客戶端驗證
在這些幻燈片中,我有一個用於新用戶註冊的Rails表單。我正在使用client side validation gem進行客戶端驗證。
問題是因爲表單在第二個.showcase-slide上,當頁面加載時,它不存在於DOM中,並且客戶端驗證不起作用。
我需要一種方式來使用在客戶端驗證的GitHub頁面找到的鉤子,以加載我的元素時激活客戶端驗證。
那麼如何在窗體上使用鉤子$('form#user_new[data-validate]').validate();
,該窗體的ID爲user_new
,並且在更改展示幻燈片時不會立即加載並從DOM中消失。
我嘗試了幾個.live
和.bind
變化,但顯然我的jQuery非常薄弱,我沒有運氣。
請幫忙嗎?
更新
我已經試過這樣:
$("body").delegate("#user_username", 'focus', function(){
$('form#user_new[data-validate]').validate()});
但現在我每次點擊#user_username場時間,另一個驗證被添加到堆棧中,我得到多個錯誤(克隆)顯示一個領域。
另一個更新和醜陋的解決方案
好吧,這是我想出的,但可以肯定的是醜陋的。歡迎任何更好的解決方案!
$("body").delegate("#user_username", 'focus', function(){
if ($('form#user_new[data-validate]').data('events') === undefined) {
$('form#user_new[data-validate]').validate()
}});
這可能是正確的做法。謝謝,標誌已被接受。 – 2011-09-20 16:26:11