1

検証が行われたときにブロックが表示されているときに、最初のスパンまでスクロールしようとしているという小さな問題があります。

次のコードを試したので、スパンが「必須」クラスで表示されている場合にユーザーが送信しようとすると、ページが上にスクロールする必要があります。

HTML:

<span id="_userExists" runat="server" visible="false" class="invalid">

これはマークアップにあり、検証が行われた後に必要なクラスが適用されます。サーバー側で実行され、検証エラー時に表示されるため、これがjqueryアニメーションにどのように影響するかはよくわかりません。

Jクエリ:

$("input[type=submit]").live('click', function(){
 console.log('clicked');
 $('html, body').animate({
   scrollTop: $('.required').first().offset().top
 }, 600);
});

エラーメッセージがインラインで表示された後、同じスクリプトを試しましたが、スクロールは起こりません。h2 などの別の要素を選択すると、ページがスクロールします。この最初のエラーへのスクロールは、ページの読み込み時と、クライアント側の検証のための送信ボタンで発生する必要があります。

助けてくれてありがとう

4

1 に答える 1

0

すべてのスパンが必要なクラスを取得した場合、これを使用して最初のスパンに到達します

$("input[type=submit]").live('click', function(){
 console.log('clicked');
 $('html, body').animate({
   scrollTop: $('.required:first').offset().top//<--here
 }, 600);
});
于 2012-07-05T14:55:16.103 に答える