Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery live click事件在IE8中不起作用_Javascript_Jquery_Internet Explorer 8 - Fatal编程技术网

Javascript jquery live click事件在IE8中不起作用

Javascript jquery live click事件在IE8中不起作用,javascript,jquery,internet-explorer-8,Javascript,Jquery,Internet Explorer 8,我正在使用下面的代码,它在我见过的所有浏览器中都可以正常工作,IE9也可以,但后来我使用了IE8,它根本不工作。。仅供参考,#cal_popup_table元素被动态添加到页面中 $("#cal_popup_table tbody tr td a").live('click', function() { $('.datepick-cmd-today').text(from_month + ' ' + from_year); var

我正在使用下面的代码,它在我见过的所有浏览器中都可以正常工作,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()
也不能工作。。单击事件根本就不会触发

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

<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>


尝试卸下
t车身

$("#cal_popup_table tr td a").live('click', function() {
一些浏览器将
添加到自动生成的表中,但IE 8没有

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

Use on()


我刚刚在ie8中检查了你的代码,
它工作得非常好,没有任何问题
,我做了一些琐事:

这是我尝试过的jQuery代码。

$(“”)
.appendTo('正文')
.attr({“id”:“cal\U popup\U table”});
$(“”).appendTo(“#cal#u popup_table tbody tr td”);
$(“#cal#u popup_table tbody tr td a”).live('click',function(){
警报(“实时点击”);
});

谢谢你的帮助,但这似乎没有改变任何东西在所有东西中仍然有效,但IE8我不明白为什么我的不起作用。。一定是有什么事
    $("#cal_popup_table").on('click', 'tr td a', function() {
        alert('a');
    });
    $('<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');
    });