Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
禁用表单中的输入字段会导致IE 7中的Javascript错误(在Firefox中工作正常)_Javascript_Jquery_Internet Explorer_Jquery Plugins - Fatal编程技术网

禁用表单中的输入字段会导致IE 7中的Javascript错误(在Firefox中工作正常)

禁用表单中的输入字段会导致IE 7中的Javascript错误(在Firefox中工作正常),javascript,jquery,internet-explorer,jquery-plugins,Javascript,Jquery,Internet Explorer,Jquery Plugins,我有一个表单,其中禁用了jQuery(document).ready(function())上未隐藏的所有输入字段 这是我的密码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <div xmlns="http://www.w3.org/1999/xhtml" xml

我有一个表单,其中禁用了jQuery(document).ready(function())上未隐藏的所有输入字段

这是我的密码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<div xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core"
    xmlns:c="http://java.sun.com/jsp/jstl/core" lang="en" xml:lang="en" style="padding-bottom: 8px;">
    <script>
        jQuery(document).ready(function()
        {
            jQuery('div#formBuilderPreviewEnrollmentData input[type!="hidden"]').prop('disabled', true);
        });
    </script>
    <h:form id="previewMarketingProgramForm">
        <div class="modal-content">
            <br /> <br /> <br />
            <div>
                <h4>Enrollment Form</h4>
            </div>
            <table cellpadding="0" cellspacing="0" border="1" width="100%" class="results-table">
                <tr>
                    <td>
                        <div id="formBuilderPreviewEnrollmentData">
                            <h:outputText value="#{previewMarketingProgramBean.enrollmentFormBean.enrollmentFormContent}" escape="false" />
                        </div>
                    </td>
                </tr>
            </table>
            <br /> <br /> <br />
        </div>
    </h:form>
</div>

jQuery(文档).ready(函数()
{
jQuery('div#formBuilderPreviewEnrollmentData input[type!=“hidden”]”)。prop('disabled',true);
});



报名表


下面是Javascript错误:

无法将焦点移动到控件,因为该控件不可见、未启用或其类型不接受焦点

请告诉我是什么导致了这个错误。我正在使用jQuery-1.7.2-min.js

以下是此表单的HTML生成源代码,供您参考:

<!DOCTYPE html> 
<html class="ltr" dir="ltr" lang="en-US"> <head> <title>View Article - Liferay</title> 
    <script src="http://xx:8001/vcc-theme/js/jquery-1.7.2.min.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/javascript.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/jquery.tablesorter.min.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/jquery.tablesorter.pager.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/jquery.autocomplete.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/jquery.simplemodal.1.4.2.min.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/jquery.scrollTo.js"></script> 
    <script src="http://xx:8001/vcc-theme/js/ui.datepicker.js"></script> 
    <script>
    /*<![CDATA[*/jQuery(document).ready(function()
    {
        jQuery('div#formBuilderPreviewEnrollmentData input[type!="hidden"]').prop("disabled",true)});
    /*]]>*/
     </script> 
     <form id="_jpfcpncuivr_A0169_j_id1:previewMarketingProgramForm" name="_jpfcpncuivr_A0169_j_id1:previewMarketingProgramForm" method="post" 
     action="http://xxx/yyy.do">
         <div class="modal-content"> 
            <br /> <br /> <br /> 
            <div> <h4>Enrollment Form</h4> </div> 
            <table cellpadding="0" cellspacing="0" border="1" width="100%" class="results-table"> 
                <tr> 
                    <td> 
                        <div id="formBuilderPreviewEnrollmentData">
                            <p> NAME: <input class="required" name="NAME" type="text" /></p> <p> &#160;</p> 
                            <p> AGE: <input name="AGE" type="text" /></p> <p> &#160;</p> 
                            <p> ADDRESS:<textarea name="ADDRESS"></textarea></p> 
                        </div> 
                    </td> 
                </tr> 
            </table> 
            <br /> <br /> <br />
         </div>
    </form>
</html>

查看文章-Liferay
/**/



报名表 姓名:

&160

年龄:160岁

地址:




我在IE7中遇到了这个JS错误(在Firefox中可以正常工作)

试试看


jQuery(文档).ready(函数()
{
jQuery('div#formBuilderPreviewEnrollmentData input[type!=“hidden”]”)。attr(“disabled”,true)
});

只是为了确保,您想要禁用不是type=“hidden”类型的输入,或者想要禁用屏幕上不可见的输入(css样式显示:无)。两者之间有很大区别,jquery选择器与之不同。

请发布生成的HTML。上面的代码没有输入。
jQuery('div#formBuilderPreviewEnrollmentData input[type!=“hidden”]”)。prop('disabled','true')
应该是
jQuery('div#formBuilderPreviewEnrollmentData input[type!=“hidden”]”)。prop('disabled',true)-您试图将其设置为字符串
true
您在哪里包括jQuery文件将HTML生成的源代码添加到我的原始帖子中。Wirey-我确实更改了jQuery中的代码('div#formBuilderPreviewEnrollmentData input[type!=“hidden”])。prop('disabled',true');到jQuery('div#formBuilderPreviewEnrollmentData input[type!=“hidden”]”)。prop('disabled',true);但仍然会犯同样的错误。不,那没用。我想禁用不是“隐藏”类型的输入。我不想禁用屏幕上不可见的输入。通过读取您的错误“无法将焦点移动到控件,因为它不可见、未启用或属于不接受焦点的类型”。我猜有一段代码会自动将焦点应用到某个元素上,因为它被禁用,所以它会给您带来错误。尝试一次禁用一个插件,然后检查错误何时不再出现。您的javascript.js文件中有哪些内容?
<script>
        jQuery(document).ready(function()
        {
            jQuery('div#formBuilderPreviewEnrollmentData input[type!="hidden"]').attr("disabled", true)
        });
</script>