IE8 jQuery строка ошибки:2 символа:36689
У меня есть эта ошибка, которая действительно свела меня с ума.
Все прекрасно работает во всех браузерах, кроме IE8 или менее.
Это мой HTML-код:
<form id="rentForm" method="post" action="rentsubmit.php" enctype="multipart/form-data">
<select id="rentmake" name="make" class="selectFields">
<option value="0">Select</option>
<option value="Audi">Audi</option>
<option value="BMW">BMW</option>
</select>
<select id="rentmodel" name="model" class="selectFields">
<option value="0">Select</option>
<option value="1 Series">1 Series</option>
<option value="2 Series">2 Series</option>
</select>
<input type="text" id="rentcolor" name="color" class="fields" />
<input type="text" name="interiorcolor" id="rentinteriorcolor" class="fields" />
<input type="text" id="rentmilage" name="milage" class="fields"/>
<input type="text" id="rentdailyprice" name="dailyprice" class="fields"/>
<input type="text" id="rentweeklyprice" name="weeklyprice" class="fields"/>
<input type="text" id="rentmonthlyprice" name="monthlyprice" class="fields"/>
<input type="text" name="mobilenumber" id="rentmobilenumber" class="fields" />
<input type="text" name="phonenumber" id="rentphonenumber" class="fields" />
<input type="text" name="email" id="rentemail" class="fields" />
<input type="file" name="photo1" id="rentphoto1" />
<input type="file" name="photo2" id="rentphoto2" />
<input type="file" name="photo3" id="rentphoto3" />
<input type="file" name="photo4" id="rentphoto4" />
<input type="file" name="photo5" id="rentphoto5" />
<input type="file" name="photo6" id="rentphoto6" />
<div id="rentFinish">Finish</div>
<div id="rentPreFinishSpan"></div>
</form>
И вот javaScript, отвечающий на это:
$('#rentFinish').click(function(){
if($('#rentcolor').val()!=='' && $('#rentinteriorcolor').val()!=='' && $('#rentdailyprice').val()!=='' && $('#rentweeklyprice').val()!=='' && $('#rentmonthlyprice').val()!=='' && $('#rentmilage').val()!==''){
if($('#rentmobilenumber').val()=='' && $('#rentphonenumber').val()=='' && $('#rentemail').val()==''){
$(this).next('div').fadeOut().html("Please enter 1 contact info at least").fadeIn();
}
else{
if($('#rentphoto1').val()=='' && $('#rentphoto2').val()=='' && $('#rentphoto3').val()=='' && $('#rentphoto4').val()=='' && $('#rentphoto5').val()=='' && $('#rentphoto6').val()=='' )
{
$(this).next('div').fadeOut().html("please upload 1 photo at least").fadeIn();
}
else{
if($('#rentmake').val()=='0' || $('#rentmodel').val()=='0'){
$(this).next('div').fadeOut().html("Please select car make and model").fadeIn();
}
else{
$('#rentForm').submit();
}}
}}
else{
$(this).next('div').fadeOut().html("All fields are required").fadeIn();
}
});
Когда нажата кнопка "#rentFinish", js проверит, не являются ли первые 6 полей формы не пустыми, а затем проверит, по крайней мере, одно поле с контактной информацией и, по крайней мере, одну фотографию, если все в порядке, форма будет отправлена. как вы видите в JS.
Это прекрасно работает во всех браузерах, кроме IE8.
В IE8 возникает ошибка, когда компилятор достигает части, которая обрабатывает отправку этой формы, ЭТА ЧАСТЬ:
$('#rentForm').submit();
И ошибка: доступ запрещен, строка ошибки jQuery-1.8.2.min.js:2 символа:36689
Я пытался и исследовал это, но я ничего не получил, может кто-нибудь помочь, пожалуйста.
Заранее спасибо.
1 ответ
Вы редактировали код компоновки для этого вопроса?.. если так, то в вашем html есть более чем несколько ошибок. Если нет, подтвердите, и ваша проблема может быть решена. Следующее было изменено с вашей оригинальной разметки.
Лишние пробелы в форме энктипа.
type = "text" объявлен в нескольких тегах выбора.
были удалены несколько закрывающих тегов выбора, которые не имеют открывающего тега
удален тег ячейки одинокой таблицы.
<form id="rentForm" method="post" action="rentsubmit.php" enctype="multipart/formdata">
<select id="rentmake" name="make" class="selectFields">
<option value="0">Select</option>
<option value="Audi">Audi</option>
<option value="BMW">BMW</option>
</select>
<select id="rentmodel" name="model" class="selectFields">
<option value="0">Select</option>
<option value="1 Series">1 Series</option>
<option value="2 Series">2 Series</option>
</select>
<input type="text" id="rentcolor" name="color" class="fields" />
<input type="text" name="interiorcolor" id="rentinteriorcolor" class="fields" />
<input type="text" id="rentmilage" name="milage" class="fields"/>
<input type="text" id="rentdailyprice" name="dailyprice" class="fields"/>
<input type="text" id="rentweeklyprice" name="weeklyprice" class="fields"/>
<input type="text" id="rentmonthlyprice" name="monthlyprice" class="fields"/>
<input type="text" name="mobilenumber" id="rentmobilenumber" class="fields" />
<input type="text" name="phonenumber" id="rentphonenumber" class="fields" />
<input type="text" name="email" id="rentemail" class="fields" />
<input type="file" name="photo1" id="rentphoto1" />
<input type="file" name="photo2" id="rentphoto2" />
<input type="file" name="photo3" id="rentphoto3" />
<input type="file" name="photo4" id="rentphoto4" />
<input type="file" name="photo5" id="rentphoto5" />
<input type="file" name="photo6" id="rentphoto6" />
<div id="rentFinish">Finish</div>
<div id="rentPreFinishSpan"></div>
</form>