ExtJS在FormPanel中添加FormPanel时IE提示"未知的运行时错误"

因业务需要我用ExtJs在FormPanel中写了个TabPanel标签,并在每个标签中又添加了FormPanel在Firefox中测试顺利通过,但在IE中就提示"未知的... 因业务需要我用ExtJs在FormPanel中写了个TabPanel标签,并在每个标签中又添加了FormPanel
在Firefox中测试顺利通过,但在IE中就提示"未知的运行时错误",最后deBug调试发现"可能"是因为不能在FormPanel中在new个FormPanel。各种百度最后也没找到好的方法。。
因代码较长,无法贴上来~~~我用的是ExtJs2.0
大体代码如下:
var form = new Ext.form.FormPanel({
id:'form',
items:[{
new Ext.TabPanel({
id:'standardsTabs',
items:[{
id: 'accomplishTab',
items:[{
new Ext.form.FormPanel({
id:'accomplishForm',
items:[{
//代码
}]
}]
}]
}]
})
展开
 我来答
luffy1201
2013-07-05 · TA获得超过1523个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:574万
展开全部
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <link rel="stylesheet" type="text/css" href="ext/resources/css/ext-all.css" />
  <script type="text/javascript" src="ext/adapter/ext/ext-base.js"></script>
  <script type="text/javascript" src="ext/ext-all.js"></script>
 
  <script type="text/javascript">   
 Ext.onReady(function() {
  var windowWidth = 1000;
  var windowHeight = 500;
 
  var sm_timesendPanel = new Ext.form.FormPanel( {
   layout : "absolute",
   items : [{
    x : 10,
    y : 15,
    xtype : "label",
    text : "请选择发送时间:"
   }, {
    id : 'sm_time',
    x : 110,
    y : 10,
    xtype : 'datefield',
    disabled : true,
    format : 'H:i'
   }, {
    x : 210,
    y : 11,
    xtype : "checkbox",
    id : "sm_isTiming",
    name : "timing",
    boxLabel : "启用",
    inputValue : "timing",
    listeners : {
     check : function(t, value) {
      if (value) {
       Ext.getCmp('sm_time').setValue(new Date());
       Ext.getCmp('sm_time').enable();
      } else {
       Ext.getCmp('sm_time').disable();
      }
     }
    }
   }, {
    xtype : "button",
    x : 140,
    y : 40,
    width : 60,
    text : "&nbsp;确&nbsp;&nbsp;定&nbsp;",
    handler : function() {
     var val = Ext.getCmp('sm_time').validate();
     if (!val) {
      Ext.MessageBox.alert("注意", "输入的时间格式不正确!");
      return;
     }
     sm_timesendWin.hide();
    }
   }]
  });
 
  var tabPanel = new Ext.TabPanel( {
   activeTab : 0,
   resizeTabs : true,
   items : [
    new Ext.Panel({
     title:"abc1",
     layout : 'fit',
     frame : true,
     items : [sm_timesendPanel] 
    }),{
     xtype:"form",
     title:"abc2",
     frame : true,
     items:[{
      xtype:'textfield',
      width:40
     }]
   }]
  })
 
  var emPanel = new Ext.Panel( {
   width : windowWidth - 15,
   height : windowHeight - 60,
   border : true,
   layout : 'fit',
   items : [tabPanel]
  });
 
  var windowWidth = window.screen.availWidth;
  var style = 'margin-top:150px;margin-left:150px;';
  var el = Ext.get('auto-center').applyStyles(style);
  emPanel.render(el);
 
 });
 </script>
 </head>
 <body>
 <div id='auto-center'></div>
 </body>
</html>

 

 

 

我用之前给别人做的例子,简单改了一下。层级嵌套,最好使用panel,别用formpanel,fomepanel在你要画表单(input,button这类)时在用,为了嵌套的话,外围就用panel,tabpanel,window,Viewport这类的。另外,要注意布局的使用,默认是form布局。

我给你的代码中,用了一个new的方式,用了一个xtype的方式,两者都可以。

cqh46
2013-07-05 · TA获得超过3292个赞
知道大有可为答主
回答量:2149
采纳率:100%
帮助的人:1259万
展开全部
因为 ExtJS 是 给予 HTML5、 CSS3 标准,所以某些功能在某些浏览器不支持。

换 4.2的吧。。
追问
2.2版本以后用在商业上就收费了 - -"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式