0

jquery 関数に問題があります。まず、これが私の HTML ヘッドです

<link href="css/bootstrap.css" media="screen" rel="stylesheet">
    <link href="css/datepicker.css" media="screen" rel="stylesheet">
    <link rel="stylesheet" type="text/css" media="screen" href="css/bootstrap-datepicker.min.css">
    <link rel="stylesheet" type="text/css" media="screen" href="css/bootstrap.min.css">
    <script src="http://code.jquery.com/jquery.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/bootstrap-datepicker.js" type= 'text/javascript'></script>
    <script src="js/bootstrap-tooltip.js" type= 'text/javascript'></script>

    <script src="js/buttons.js"></script>

これが私のbutton.jsファイルのコードです

$(window).load(
    function(){
        ...
        $(document).on('click', '.popover a', function(){
            alert("asd");
        });

        $('#button_nowtime').popover({
            trigger: 'click',
            html: 'true',
            title:  "<b>Čas</b>",
            content: 
            function() {
                var returnstring="",button;
                    for(var i=0; i<files.length; i++){
                        button = document.createElement("a");  
                        button.innerText = "someText"
                        button.href="#";
                        returnstring+=button.outerHTML;
                    }
                return returnstring;
            }
        });
   }
);

html

<a href="#" id="button_nowtime" class="btn btn-lg btn-danger" data-placement="bottom" data-toggle="popover" title="" >N/A</a>

問題は、ツールチップのボタンをクリックしてもアラート ("asd") がポップアップしないことです。

4

2 に答える 2

1

window.load の代わりに $.ready を使用する必要があります。おそらく、オブジェクトが存在する前に window.load が発生するため、コードが機能しません。http://www.dotnetbull.com/2013/08/document-ready-vs-window-onload.html

このサンプルは動作しますhttp://jsfiddle.net/nWKqt/

[ignore this - just including a code block so stackoverflow will let me post the above JSFiddle link. Yeah, seriously.]

また、あなたではなく、イベントを宣言した後に起動する jquery プラグインから定義されたクラスに依存するコードを作成しました。

ポップオーバー プラグインを宣言した後にクリック イベントを配置してみてください。ただし、cssClass を定義してそれに依存する方がよいでしょう。

于 2013-10-31T09:03:24.690 に答える
0

これを使用しない理由:

 $(".popover a").click( function(){
            alert("asd");
        });

古い方法はうまくいきます..

于 2013-10-31T09:02:06.247 に答える