1) typeof 运算符
typeof 是一元运算符,返回结果是一个说明运算数类型的字符串。如:"number","string","boolean","object","function","undefined"(可用于判断变量是否存在)。
但 typeof 的能力有限,其对于Date、RegExp类型返回的都是"object"。如:
typeof {}; // "object"
typeof []; // "object"
typeof new Date(); // "object"
所以它只在区别对象和原始类型的时候才有用。要区一种对象类型和另一种对象类型,必须使用其他的方法。如:instanceof 运算符或对象的 constructor 属。
items:new Ext.ux.ComboBoxTree({
anchor:'90%',
allowBlank:false,
width:230,
height:150,
emptyText:"知识库栏目",
name:'type1',
hiddenName:'type1',
fieldLabel:"栏目",//受理类型
editable:false, //禁止手写及联想功能
tree : {
xtype:'treepanel',
root:new Ext.tree.AsyncTreeNode({
text: "ff",//节点名称
id:'0'
}),
expanded:true,
autoScroll:true,
animate:true,
containerScroll: true,
singleExpand:true,
rootVisible:false,
loader:new Ext.tree.TreeLoader({url:"KnowledgeAction!loadProjectTypeTree.action"})
},
selectNodeModel:'all',
setValue : function(node){
var text;
if(typeof(node) == 'object'){ //为对象,取对象属性,不为对象,则直接取值,这样可以给comboxtree自动赋值,一般用于加载form时给from赋值,初始化
if(node==undefined || node==null || node==""){
this.value="";
this.clearValue();
}else if(node.attributes.leaf){
text = node.attributes.subtext; //工程管理客户类型
Ext.form.ComboBox.superclass.setValue.call(this, text);
}else{
this.value="";
this.clearValue();
};
}else{
text = node;
};
Ext.form.ComboBox.superclass.setValue.call(this, text);
}
})
editForm.form.findField("type1").setValue(type); // comboxtree初始化赋值,type为一字符串