0

インライン ルートを使用してファンシーボックス フォームを機能させようとしていますが、サブミット ハンドラーを起動するのに問題があります。

ファンシーボックスサイトから直接持ち上げたフォームの例を使用しても、これは機能しませんhttp://fancybox.net/blogの例5

これが私のコードでdisplay:none、送信ハンドラーの動作を妨げているようです。私はこれを何時間も蹴っていて、困惑しています。

ここにいくつかのコードがあります:

<script type="text/javascript" >
$(document).ready(function() {

    $("#tip5").fancybox({
        'scrolling'     : 'no',
        'titleShow'     : false,
        'onClosed'      : function() {
            $("#login_error").hide();
        }
    });

    $("#login_form").bind("submit", function() {

        alert("THIS ALERT IS NOT FIRING");

        return false;
    });

}); 

</script>
</head>
<body>

<div style="display:none">
    <form id="login_form" method="post" action="">
            <p id="login_error">Please, enter data</p>
        <p>
            <label for="login_name">Login: </label>
            <input type="text" id="login_name" name="login_name" size="30" />
        </p>
        <p>
            <label for="login_pass">Password: </label>
            <input type="password" id="login_pass" name="login_pass" size="30" />
        </p>
        <p>
            <input type="submit" value="Login" />
        </p>
        <p>
            <em>Leave empty so see resizing</em>
        </p>
    </form>
</div>

<a id="tip5" href="#login_form" title="Login">Try now</a>

display:none が削除されると、アラートが機能します。

助けてくれてありがとう。

4

1 に答える 1

1

おそらく新しいファンシーボックスのバージョン番号2を使用し、古いバージョンを試してみてください。一部の関数が変更されました。たとえば、resize()もう存在しません。update()今すぐ呼び出されますか

于 2012-06-17T14:18:04.740 に答える