0

私は単純なカラーボックスをロードしました:

$.colorbox({html: $('#widget-login').html()});

colorbox の内容はフォーム (入力 + ラベル) です。

<form name="f-login" id="f-login" action="#" method="post">
    <fieldset>
        <label for="f-email">e-mail:</label>
        <input type="email" name="email" id="f-email" />
        <input type="submit" value="go" />
    </fieldset>
</form>

ラベル「e-mail」をクリックすると、f-email入力にフォーカスするはずですが、何も起こりません。私が間違っていることは何ですか?

FF17.0.1

4

3 に答える 3

1

これがあなたが求めているものかどうかはわかりませんが、これを試してみてください..

$(label['for="f-email"').click(function(){
       $('#email').focus();
    });

フィドル..

于 2013-01-07T12:15:07.047 に答える
1

colorbox はフォーム要素とは何の関係もありません。

これをフォーム html のヘッダー ファイルに追加してください。ラベルに ID がないため、$('label') と入力します。それ以外の場合は、ラベルに ID を付けて、以下の jquery で追跡できます。また、シンプルな jquery のアイデアを得ることができます。

$(document).ready(function() {
// put all your jQuery code in here.
    $('label').on('click', function(){
       $('#f-email').focus();
    });
});;
于 2013-01-07T12:30:51.123 に答える
0

解決しました:]

質問を編集しましたが、重要な更新があります。カラーボックストリガーでhtmlはありません。hrefこの場合、同じIDを持つ2つの要素があります。1つは非表示のdivにあり、2つ目はカラーボックスにあります。

時間を無駄にして申し訳ありません。

于 2013-01-07T12:54:00.010 に答える