coffee_cn

博客园 首页 新随笔 联系 订阅 管理

在上一个版本(http://www.cnblogs.com/coffee_cn/archive/2010/06/02/1750225.html)的基础上把js部分代码调整的稍微通用一些,

当需要添加“单选框”或“复选框”时,直接拷贝html代码即可。 

 

<script src="jquery-1.3.2.min.js"></script>

<script language="javascript">
$(document).ready(
function() {
    $(
".checkbox li,.radio li").click(function(){
        $(
this).toggleClass("checked");

        
var id = $(this).parent().attr("id");
        
var type = $(this).parent().attr("class");
        
var nonevalue = $(this).parent().attr("nonevalue");
        
var othervalue = $(this).parent().attr("othervalue");
        
if(type=='undefined') type='checkbox';
        
if(nonevalue=='undefined') nonevalue='0';
        
if(othervalue=='undefined') othervalue='-1';

        
var array_value = new Array();
        
var value = $(this).attr("value");

        
if(type=='radio') {
            $(
"#"+id+" li[value!='"+value+"']").removeClass("checked");
        }

        
if(value==nonevalue) {
            $(
"#"+id+" li[value!='"+nonevalue+"']").removeClass("checked");

            array_value 
= new Array(nonevalue);
        } 
else {
            $(
"#"+id+" li[value='"+nonevalue+"']").removeClass("checked");

            $(
"#"+id+" li[class='checked']").each(function(){
                array_value.push($(
this).attr("value"));
            });
        }

        $(
"#"+id+"_value").val(array_value.join(","));
    });
});
Array.prototype.contains 
= function (element) { 
    
for (var i = 0; i < this.length; i++) { 
        
if (this[i] == element) { 
            
return true
        } 
    } 
    
return false
}
</script>

<style>
.checkbox li, .radio li 
{
    display
: inline;
    margin
: 6px;
}
.checked 
{
 background-color
: #ff0000;
 font-weight
: bold;
}
</style>


多选框1 
<input type="text" id="checkbox1_value" value="1"><br/>
<ul id="checkbox1" class="checkbox" nonevalue="0" othervalue="9">
<li value="1" class="checked">1.li1</li>
<li value="2">2.li2</li>
<li value="3">3.li3项目3</li>
<li value="4">4.li4</li>
<li value="5">5.li5项目5</li>
<li value="6">6.li6</li>
<li value="7">7.li7项目7</li>
<li value="8">8.li8</li>
<li value="0">0.li无</li>
</ul>
<br/>


单选框1 
<input type="text" id="radio1_value" value="2"><br/>
<ul id="radio1" class="radio">
<li value="1">1.li1</li>
<li value="2" class="checked">2.li2</li>
<li value="3">3.li3</li>
<li value="4">4.li4</li>
</ul>
<br/>

 

 

当需要添加“单选框”或“复选框”的时候,直接拷贝代码,修改红色部分内容即可。

单选框2 <input type="text" id="radio2_value" value="2"><br/>
<ul id="radio2" class="radio">
<li value="1">1.li1</li>
<li value="2" class="checked">2.li2</li>
<li value="3">3.li3</li>
<li value="4">4.li4</li>
</ul>
<br/>

 

posted on 2010-06-03 14:55  coffee  阅读(1293)  评论(0编辑  收藏  举报