+ -
当前位置:首页 → 问答吧 → ext comb 第一次选择正常 第二次选择 就提示脚本会影响ie速度 然后就死机!

ext comb 第一次选择正常 第二次选择 就提示脚本会影响ie速度 然后就死机!

时间:2011-01-11

来源:互联网

webconfig:
<add key="urishuzu" value="[['张三', 'zhangsan'], ['李四', 'lisi'], ['丁一', 'dingyi']]"/>

test.aspx.cs
后台获取配置文件的数据
 urishuzu = Convert.ToString(ConfigurationManager.AppSettings["urishuzu"]);
test.aspx 前台
定义数据
 var datauri = <%=urishuzu %>;


  var store = new Ext.data.SimpleStore({
  fields: ['chinese', 'english'],
  data: datauri
  });

定义comb
 id: 'liyue',//没用
  name: 'liyue',//没用
  xtype: "combo",
  hiddenName: 'provinceHidden',//不用
  displayField: 'chinese',
  valueField: 'english',
  mode: 'local',
  minChars: '1',
  queryDelay: 300, // 延时300毫秒  
  store: store,
  triggerAction: "all",
  forceSelection : true,
  selectOnFocus: true,
  pageSize: 3,
  width: 200,
  labelSeparator: ':',
  emptyText: '请选择',
  fieldLabel: '姓名',
  editable : false,
  readOnly : true,
  listeners: {
  select: function(comb, record, index) {

  // alert(comb.getValue());
  var biaozhunuri = comb.getValue();
  Drsee(biaozhunuri);
  }
  }

js文件中的方法
 function Drsee(biaozhunuri) {

  //Ext.getCmp('dr').close();
  var group = document.getElementById('group');
  var Love = group.getAttribute('bindClass');

  Ext.Ajax.request({

  // url:"test.aspx",
  url: "DRdata.aspx",
  // //传递到后台的参数
  params: {
  uri: biaozhunuri
  },


  success: function(response, config) {

  var jsonData = Ext.util.JSON.decode(response.responseText);

  DRTree(jsonData);//此处调用返回的json数据画图 一个方法 还涉及到其他方法就不贴代码了


  },
  failure: function() {
  Ext.MessageBox.alert("result", "请求失败");
  }

  });

  }

DRdata.aspx.cs 处理数据

//获得 ajax请求传过来的参数
string biaozhunuri = Request.Form[0].ToString();

//根据 传过来的参数 获取一个dataset
 ds = treeAgent.GetTreeByURI(biaozhunuri);
//转换成json格式
string s = "{\"count\":" + ds.Tables[0].Rows.Count.ToString() + ",\"nodes\":[";
 int i = 0;

  for (i = 0; i < ds.Tables[0].Rows.Count - 1; i++)
  {
  s += "{\"id\":" + ds.Tables[0].Rows[i]["nodeid"] + ",\"pid\":" + ds.Tables[0].Rows[i]["nodepid"] + ",\"URI\":" + "\"" + ds.Tables[0].Rows[i]["URI"].ToString() + "\",\"name\":" + "\"" + ds.Tables[0].Rows[i]["nodename"].ToString() + "\"},";
  }

  s += "{\"id\":" + ds.Tables[0].Rows[i]["nodeid"] + ",\"pid\":" + ds.Tables[0].Rows[i]["nodepid"] + ",\"URI\":" + "\"" + ds.Tables[0].Rows[i]["URI"].ToString() + "\",\"name\":" + "\"" + ds.Tables[0].Rows[i]["nodename"].ToString() + "\"}]}";

  Response.Write(s);

  }


现在问题是 第一次选择comb的数据 正常返回json数据(我用来画图的) 但再次选择comb其他选项,如果单步就会提示请求失败 如果不单步 就提示 运行该脚本会降低ie速度 不管我选择“是”还是“否” ie都会死掉 进而死机
有高手能帮忙指点问题出在哪吗 哪地方有死循环?

作者: liyue36427076845110   发布时间: 2011-01-11

没时间细看
不过你可以直接调试JS的运行 看看哪里在一直循环

作者: KK3K2005   发布时间: 2011-01-11

热门下载

更多