Jquery $.ajax()在除Firefox以外的任何浏览器中都不工作

Jquery $.ajax()在除Firefox以外的任何浏览器中都不工作,jquery,ajax,coldfusion,Jquery,Ajax,Coldfusion,我有一个小脚本,可以在页面加载时检索租赁日期,如果用户从下拉列表中选择另一个月,还可以检索新日期 该站点正在使用jQuery 1.2.3,我现在只能使用它(遗留脚本),因此无法更新到1.4 我用Firefox和Firebug编写并调试了它,并意识到它在任何其他浏览器中都不起作用。我不知道为什么。在Firefox中,我肯定会得到新的日期,div会用收到的AJAX数据进行自我更新。其他浏览器什么都不做 $(document).ready(function() { $.ajax

我有一个小脚本,可以在页面加载时检索租赁日期,如果用户从下拉列表中选择另一个月,还可以检索新日期

该站点正在使用jQuery 1.2.3,我现在只能使用它(遗留脚本),因此无法更新到1.4

我用Firefox和Firebug编写并调试了它,并意识到它在任何其他浏览器中都不起作用。我不知道为什么。在Firefox中,我肯定会得到新的日期,div会用收到的AJAX数据进行自我更新。其他浏览器什么都不做

$(document).ready(function() {
            $.ajax({
                url: '/rental/get_dates.cfm',
                type: 'POST',
                data: 'date=<cfoutput>#dateFormat(now(), "m-yyyy")#</cfoutput>&rental=<cfoutput>#val(getOneRental.rentalListingID)#</cfoutput>',
                success: function(data) {
                    $('#rental_calendar .rentalRateData').html(data);
                }
            });

        });

        function update_calendar(date) {
            $.ajax({
                url: '/rental/get_dates.cfm',
                type: 'POST',
                data: 'date='+date+'&rental=<cfoutput>#val(getOneRental.rentalListingID)#</cfoutput>',
                success: function(data) {
                    $('#rental_calendar .rentalRateData').html(data);
                }
            });
        }
$(文档).ready(函数(){
$.ajax({
url:“/rental/get_dates.cfm”,
键入:“POST”,
数据:'date=#dateFormat(now(),“m-yyyy”)#和rent=#val(getonentental.rentalListingID)#',
成功:功能(数据){
$('#rental_calendar.rentalRateData').html(数据);
}
});
});
功能更新\日历(日期){
$.ajax({
url:“/rental/get_dates.cfm”,
键入:“POST”,
数据:'date='+date+'&rental=#val(getonentental.rentalListingID)#',
成功:功能(数据){
$('#rental_calendar.rentalRateData').html(数据);
}
});
}
HTML:


#日期格式(月\选择“mmmm yyyy”)#
#日期格式(月\选择“mmmm yyyy”)#
进站
比率

为什么这只适用于Firefox?有更简单的方法吗?

我打赌是html()函数。我会尝试提醒数据,以确保ajax功能正常工作,然后尝试使用不同的方式将数据添加到表中。

您可以尝试为代码运行最新版本的JQuery。下面是一个链接,指向如何执行此操作的示例:


我相信可以同时运行多个版本的jquery。您可以封装代码并加载最新版本的jquery,以便它仅用于您的脚本。我假设
标记不在返回的输出中,它将被转换?Coldfusion将生成选项输入。HTML源代码看起来像一个普通的HTML表单。@凯文:是的,我知道-你有浏览器从AJAX请求接收到的实际输出的示例吗。@DKinzer:你是怎么做到的?我尝试过使用.append,但什么都没有发生。我在update_日历中放了一个alert(),但也没有触发。我不认为有人叫它,真奇怪。我甚至会尝试在documentready函数中发出警报,看看它是否是ajax函数之外的东西。我将onclick移动到select元素中的onchange。现在它可以工作了,但在IE7中不行。IE7将返回数据,但.html()无效。也尝试了。追加。它表示“对象不支持此属性或方法”-当我尝试使用innerHTML时也是如此。您可能无法在IE中的表上使用append。我可能尝试使用div而不是表来表示RentalRate数据,并将整个表添加到该表中。
<form name="rental_month" id="rental_month" method="post">
    <select name="month">
        <cfset month_choice = dateFormat(now(), 'm-yyyy')>
        <cfoutput>
            <option value="#lcase(month_choice)#"  onclick="update_calendar('#month_choice#');" class="default">#dateFormat(month_choice, 'mmmm yyyy')#</option>
        </cfoutput>
        <cfloop from="1" to="12" index="i">
            <cfset month_choice = dateFormat(dateAdd('m', i, now()), 'm-yyyy')>

            <cfoutput>
                <option value="#lcase(month_choice)#" onclick="update_calendar('#month_choice#');">#dateFormat(month_choice, 'mmmm yyyy')#</option>
            </cfoutput>
        </cfloop>
    </select>
</form>

    <div id="rental_calendar">
        <table class="rentalRates" cellpadding="0" cellspacing="0" width="98%">
            <tr>
                <th align="left">Arrival</th>
                <th align="right">Rate</th>
            </tr>
        </table>
        <table class="rentalRateData" cellpadding="0" cellspacing="0" width="98%">  

        </table>
    </div>