需求突然需要一個只可以顯示年月的控件,datebox不能滿足需求,只能棄而求次了。
<body>
<div style="margin:20px 0"></div>
<select id="cc" style="width:150px"></select>
<div id="sp">
<div style="color:#99BBE8;background:#fafafa;padding:5px;">Select a language</div>
<div style="padding:10px">
<input type="radio" name="lang" value="01"><span>一月</span><br/>
<input type="radio" name="lang" value="02"><span>二月</span><br/>
<input type="radio" name="lang" value="03"><span>三月</span><br/>
<input type="radio" name="lang" value="04"><span>四月</span><br/>
<input type="radio" name="lang" value="05"><span>五月</span><br/>
<input type="radio" name="lang" value="06"><span>六月</span><br/>
<input type="radio" name="lang" value="07"><span>七月</span><br/>
<input type="radio" name="lang" value="08"><span>八月</span><br/>
<input type="radio" name="lang" value="09"><span>九月</span><br/>
<input type="radio" name="lang" value="10"><span>十月</span><br/>
<input type="radio" name="lang" value="11"><span>十一月</span><br/>
<input type="radio" name="lang" value="12"><span>十二月</span>
</div>
</div>
<script type="text/javascript">
$(function(){
$('#cc').combo();
$('#sp').appendTo($('#cc').combo('panel'));
$('#sp input').click(function(){
var year = $("#cc").combobox('getText');
//如果是正整數
if(isUnsignedInteger(year)){
var v = $(this).val();
var newYear = year.substring(0,4);
$('#cc').combo('setValue', v).combo('setText', newYear+v).combo('hidePanel');
}else{
$.messager.alert("tip","請輸入大於1994且小於2055的年份","error");
}
});
});
//檢查是否爲正整數
function isUnsignedInteger(a)
{
var reg= new RegExp("^[0-9]*$");
if(reg.test(a)){
//限制年份
if(a>1994&&a<2055){
return true;
}else{
return false;
}
}
return reg.test(a);
}
</script>
</body>
謹做個記錄,或許以後還能用着。