dojo 通过widgetid获取对象,dojo.query
通过widgetid来获取dijit.from.Button对象:
var dialogBtn=dijit.byId(dojo.query(".dialogBtn",viewRootNode)[0].getAttribute("widgetid"))
?
?
TitlePane title加链接:
<div dojoType="dijit.TitlePane" open="false"? title="<a href='javascript:void(0);' >查询</a>">?
?
注意dojoType与data-dojo-type的区别:
?
<div data-dojo-type="dijit.form.TextBox" data-dojo-props='name:"text"'></div>
?
关注Dojo以及前端技术:http://t.sina.com.cn/dojotoolkit
?
?
email验证:
var regExpEmail = new RegExp(dojox.validate.regexp.emailAddress(false));
????????if(!regExpEmail.test(v)){
?????????return false;
????????}
使用regExp,blur里验证,不要使用validator(每点击就执行一次)
?
?
传递this对象,可以在cancelOpenMobileBank 函数里调用this:
dojo.hitch(this,func)????????????? func中的this,跟hitch传入的是一个对象
?
?
使用dojo.mixin给一个对象增加方法或者属性:
dojo.mixin(obj ,function)
?
?
常用的 dojo.query 用法:
?
var viewRootNode2= dojo.query(".body .sery .downbtn.disabledbtn")[0];
dojo.query("#header > h1")?? //ID 为 header 的元素的直接子节点中的 h3 元素
?dojo.query("span[title^='test']")? // 属性 title 以字符串 test 开头的 span 元素
?dojo.query("div[id$='widget']") // 属性 id 以字符串 widget 结尾的 div 元素
?dojo.query("input[name*='value']")? // 属性 name 包含子串 value 的 input 元素
?dojo.query("#myDiv, .error") // 组合查询,结果中包含 ID 为 myDiv 的元素和 CSS 类为 error 的元素
?dojo.query(".message.info") // 同时包含了 CSS 类 message 和 info 的元素,注意两个类之间不包含空格
?dojo.query("tr:nth-child(even)") // 出现在父节点的偶数位置的 tr 元素
?dojo.query("input[type=checkbox]:checked") // 所有选中状态的复选框
?dojo.query(".message:not(:nth-child(odd))") // 嵌套子查询,选中包含 CSS 类 message,
????????????????????????????????????????????? //并且不出现在父节点的奇数位置的元素
?
?
callback && typeof callback == "function" && callback.call(scope);
?
var dh2Pane=dijit.byId(dojo.query(".dhPane", this.viewRootNode)[0].id);
???dh2Pane.set("content","<p>我爱你!</p>");
?
?
?
?
?
?
?
?
?
?