У меня есть небольшой скрипт, который извлекает даты аренды при загрузке страницы, а также извлекает новые даты, если пользователь выбирает другой месяц из выпадающего списка.
Сайт использует 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);
}
});
}
HTML:
<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>
Почему это работает только в Firefox?Есть ли более простой способ сделать это?