1

以下は私が試したものです。

jQuery:

$("#type_name").click(function(){
            $("#add_form").fadeIn(1000);
            $("#involved_name").val("");
            positionPopup('#add_form');
            $("#involved_name").focus();
        });

html:

<div id="add_form" style="display:none">
<h2>Enter involved Name<h2>
<table><tr><td>
<input type="text" id="involved_name" name="name" maxlength="20" /></td></tr>
</table>
<div style="width:180px;margin:20px 5px 0 10px" align="right">

            <button type="button" class="close" name="cancel" class="forward backicon">
                <img src="{{ STATIC_URL }}images/button-icon-ir-back.png" width="12" height="17" alt="" />
            Cancel</button>   {% include "buttons/add.html" %}
        </div>
</div>

HTMLのonclickボタン:

<button type="submit" name="edit" class="forward" id="type_name"><font color="#026BE2">Type a name </font></button>

上記のコードは機能せず、コンソールにエラーは表示されませんが、ポップアップは表示されません。ヘルプが必要です。

4

2 に答える 2

0

DOM が構築された後、イベントを正しくバインドしていません。$.ready()コードを、または$()略してラップする必要がある場合があります。

$(function () {
  $("#type_name").click(function () {
    $("#add_form").fadeIn(1000);
    $("#involved_name").val("");
    positionPopup('#add_form');
    $("#involved_name").focus();
  });
});

bodyまたは、終了タグの直前にコードを移動するだけでもかまいません</body>

他の問題はそれほど気にならないようです。

于 2013-05-20T12:21:51.373 に答える
-2

$.ready@Alexanderが指摘したように、推測はうまくいくはずです。また$("#type_name").live('click',function(){}); 、新しいjQueryバージョンの場合に置き換え.liveてみてください.on

これにより、DOM の読み込みに関係なく、イベントが動的にバインドされます。

于 2013-05-20T11:09:05.083 に答える