Combo组件为自定义下拉列表组件,无class的加载方式,主要是通过jquery的方式。它依赖于validatebox,可以用它的很多属性。例如:
前台:
<div id="box"></div>
<id id="food">
<div style="width:150px;padding:50px">请选择</div>
<div style="padding:50px"><input type="radio" value="gz1"><span>果子1</span></div>
<div style="padding:50px"><input type="radio" value="gz2"><span>果子2</span></div>
<div style="padding:50px"><input type="radio" value="gz3"><span>果子3</span></div>
</div>
后台(jq):
$(function()
$("box").combo() /*到这里,就能够显示一个空的下拉列表框*/
{ require:true,/*不能为空*/
??如何放进去?
在menu组件中,通过属性menu:'#box'能够将菜单项进行关联,在此处必须用其它方式。打开firebug的方式进行观察:
console:log($("#box").combo("panel")); /*主要同通过panel属性进行关联*/
$("#food").appendTo($("#box").combo("panel"));/*即可完成显示,这是重点*/
};
第一步:??如何获得点击的下拉列表的值?
$("#foond input").click(funciotn(){
var v=$(this).val();/*选择的值*/
var t=$(this).next("span").text(); /*获取点击的input的同级span对象,这也是重点*/
});
第二步:赋值:
$("#box").combo("setvalue",v); /*所选择的值*/
$("#box").combo("setText",t);/*所选择的文本*/
$("box").combo("hidePanel");/*隐藏弹出的面板*/
$("#box").combo("setvalue",v).combo("settext",t).combo("hidePanel");/*这是教程的写法*/
})