1

これは非常に単純であると理解していますが、実行中にエラーが発生します。ボタン内に異なるスパンを持つボタンをWebサイトに持っています.スパンは、クリックするとJqueryを使用して変更されます. Firebug を使用して、クリック メソッドが最初のスパン テキストで機能することを確認しようとしていますが、何らかの理由で次のエラーが発生します。私は何を間違っていますか?(注、ページでは最新の Jquery が使用されています)

HTML:

<button id="signup_forms_submit" class="chrome big on_dark signup_forms_submit touchy blue">
        <span class="account_btn">Start</span>
        <span class="birthday_btn">Next</span>
        <span class="captcha_btn"><span><b>Almost</b> <b>Done!</b></span></span>
        <span class="login_btn">Log in</span>
    </button>

Jquery コマンド:

$('.account_btn').click();

Firebug コンソール ログ:

TypeError: $(...) is null

$('.account_btn').click();
4

5 に答える 5

0

おそらくそこに互換性の問題があります。

試す:

$J = jQuery.noConflict();
$J(function() {
    $J('.account_btn').click();
});
于 2013-01-28T16:22:29.013 に答える
0

試す

$('span .account_btn').click();
于 2013-01-28T16:16:46.197 に答える
0

スパンがボタンの内側にあるため、最初のクリック イベントはボタンのクリック イベントをトリガーし、スパンの特定のアクションはトリガーしません。

ボタン内のスパンごとに異なるイベントが必要な場合は、それらをボタンではなく div で囲み、イベントをバインドする必要があります。

$(function(){  
    $('span.account_btn').click(function(e){
        e.preventDefault(); 
        // Do something
    });
});

また、次のように記述すると、クラス「account_btn」のスパンが null ではないことがわかります。

$(function(){
    console.log($('span.account_btn'));
});
于 2013-01-28T17:21:24.017 に答える
0

ボタン内に「サブボタン」を見たことがない。最初に単一のボタンを作成してみてください。おそらくスパンですが、このボタン タグ内には作成しないでください。このhtmlはjsを使用して生成されていますか? 多分あなたは使うべきです

$(document).on('click','.account_btn', function(){...});

それから。

于 2013-01-28T16:21:27.393 に答える
0

コンソールに次のように入力します。

jQuery

それはあなたに何を与えますか?jQuery をまったくロードしていないように見えるからです。新しいタブ (空のタブ) を開いてコンソールに入力してみてください。何が表示されるかを確認してください :-)

$('.span').click()
TypeError: Cannot call method 'click' of null
于 2013-01-28T16:24:58.597 に答える