2011-11-18 68 views
0

支柱項目我使用Struts框架和jQuery一起並有按鈕。單擊該按鈕時,如果數據有效,則會調用保存數據的操作,否則會顯示頂部div中的其他錯誤。但問題是,它不滾動顯示用戶錯誤,我希望它滾動顯示用戶錯誤消息。自動滾動在JSP

我知道,它可以使用的href =「#」來解決,但它已經被用來調用動作。

回答

1

你的問題並沒有真正說清楚這是否驗證發生客戶端,或者如果你說「布特從服務器的響應,並且您還沒有表現出任何代碼,所以我不知道在哪裏正是你需要把以下,以適應現有的實現,但無論如何,你可以把一個元素到視圖這樣的:

document.getElementById("idofyourdivhere").scrollIntoView(true); 

參數true應該對齊元素滾動區域的頂部;如果你通過false,它應該與底部對齊。

我不知道是否有jQuery方法來做同樣的事情,但當然你可以選擇與jQuery的div(你可能已經這樣做來設置錯誤消息),然後調用非jQuery功能 - 下面用了jQuery設置錯誤消息,並且取消隱藏DIV(顯然這是假定它最初是隱藏的)將其帶入鑑於非jQuery的方式前:

var yourDiv = $("#idofyourdivhere"); 
yourDiv.html("Your error message here").show(); 

yourDiv[0].scrollIntoView(true); 
+0

我可以這樣做$('# 。yourdiv「)顯示()scrollIntoView(真); –

+0

你應該能夠做到'$(#yourdiv「)顯示()[0] .scrollIntoView(真);' - 那些jQuery方法返回一個jQuery對象中又包含匹配該選擇的各個元素在你如果您知道第一個(也是唯一的)匹配元素是正確的,那麼使用'[0]'選擇該元素,然後您就可以使用常規(非jQuery)DOM方法。 – nnnnnn