0


我有这个错误,真的让我抓狂。
除了 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 char:36689
我对此进行了尝试和研究,但我什么也没得到,谁能帮忙。
提前致谢。

4

1 回答 1

1

您是否编辑了此问题的布局代码?...如果是这样,您的 html 中存在多个错误。如果不是,请验证,您的问题可能会解决。以下内容已从您的原始标记更改。

表单 enctype 中的额外空格。

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>
于 2013-09-11T02:06:31.193 回答