繁体   English   中英

jquery实时点击事件在IE8中不起作用

[英]jquery live click event not working in IE8

我正在使用以下代码,它在我见过的所有浏览器中都能正常工作,IE9很好但是我来到IE8并且它根本不起作用..仅供参考#cal_popup_table元素动态添加到这一页..

        $("#cal_popup_table tbody tr td a").live('click', function() {
            $('.datepick-cmd-today').text(from_month + ' ' + from_year);

            var test = from_yeartest + '-' + from_monthtest + '-' + from_daytest;
            var test_new = test.split("-");
            var today = test_new[0] + '-' + test_new[1] + '-' + test_new[2];

            $("#arrival").val(today);
        });

任何人都可以解释为什么它可能无法正常工作,函数内部的代码无关紧要,因为简单的alert()也不起作用.. click事件根本不会触发

更新 - 这是插入页面的代码(修剪了一些内容等)

<div id="cal_popup" class="datepick-popup" style="position: absolute; left: 901px; top: 219px; ">
<div class="datepick" style="width: 195px; ">
    <div class="datepick-nav">
        <a href="javascript:void(0)" title="Show the previous month" class="datepick-cmd datepick-cmd-prev  datepick-disabled">&lt;</a>
        <a href="javascript:void(0)" title="Show today's month" class="datepick-cmd datepick-cmd-today ">December 2012</a>
        <a href="javascript:void(0)" title="Show the next month" class="datepick-cmd datepick-cmd-next ">&gt;</a>
    </div>

    <div class="datepick-month-row">
        <div class="datepick-month">
            <table id="cal_popup_table">
                <tbody>
                    <tr>
                        <td>
                            <a href="javascript:void(0)" class="datepicker_link dp1354708800000   datepick-today datepick-highlight" title="Select Wednesday, Dec 5, 2012">5</a>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>  
</div>

尝试删除tbody

$("#cal_popup_table tr td a").live('click', function() {

有些浏览器会将<tbody>添加到自动生成的表中,但IE 8则不会。

这就是JS无法在IE 8中执行代码的原因。

用于()

    $("#cal_popup_table").on('click', 'tr td a', function() {
        alert('a');
    });

我刚刚checked your code in ie8 its working absolutely fine no problems whatsoever ,我做了一些小提琴: http//jsfiddle.net/J8ysn/1/

这是我尝试过的jQuery代码。

    $('<table border="1"><tbody><tr><td></td></tr></tbody></table>')
        .appendTo('body')
        .attr({"id":"cal_popup_table"});

    $('<a href="#">clik</a>').appendTo("#cal_popup_table tbody tr td");


    $("#cal_popup_table tbody tr td a").live('click', function() {
          alert('live clicked');
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM