我想要一组每个都不同单选按钮,就是选中和不选中是两张图片。昨天得到大家的帮助有了这个代码。还差一个问题就是radio{ background-image:url("1.png")得到的效果是在单选按钮下面加了一张图,可是按钮还是有。有没有方法把radio控件完全隐藏起来只留效果?<html>
<head>
<title></title>
<script src="jquery-1.7.2.min.js" type="text/javascript"></script><style type="text/css">
#radio1,#radio2,#radio3{width:50px; background-repeat:no-repeat;}
#radio1{ background-image:url("1.png");}
#radio1.a{ background-image:url("11.png");}#radio2{ background-image:url("2.png");}
#radio2.a{ background-image:url("22.png");}#radio3{ background-image:url("3.png");}
#radio3.a{ background-image:url("33.png");}}
</style><script type="text/javascript">
$(function(){
$("input[name=p];radio").click(function() {
$("input[name=p];radio").removeClass("a");
$(this).addClass("a");
});
});
</script></head><body>
<input type="radio" name="p" id="radio1" />
<input type="radio" name="p" id="radio2" />
<input type="radio" name="p" id="radio3" />
</body>
</html>
<head>
<title></title>
<script src="jquery-1.7.2.min.js" type="text/javascript"></script><style type="text/css">
#radio1,#radio2,#radio3{width:50px; background-repeat:no-repeat;}
#radio1{ background-image:url("1.png");}
#radio1.a{ background-image:url("11.png");}#radio2{ background-image:url("2.png");}
#radio2.a{ background-image:url("22.png");}#radio3{ background-image:url("3.png");}
#radio3.a{ background-image:url("33.png");}}
</style><script type="text/javascript">
$(function(){
$("input[name=p];radio").click(function() {
$("input[name=p];radio").removeClass("a");
$(this).addClass("a");
});
});
</script></head><body>
<input type="radio" name="p" id="radio1" />
<input type="radio" name="p" id="radio2" />
<input type="radio" name="p" id="radio3" />
</body>
</html>
解决方案 »
- 网页要往下拉下面的图片才加载是如何实现的?
- A页面打开B页面问题,求助!
- 急求 js replace " 替换为 \"
- 请教高手怎么用JS模拟键输入
- 如何判断IE7是否使用了Tab方式?
- 这年头连csdn的账号也会丢
- 关于用层模拟的下拉菜单被遮挡的问题求助
- java script 有自己的函数库吗?如字符串函数(像C一样),有哪些啊,哪有这方面的资料?(一位java初学者)
- a打开b,b打开c时关闭了a,『问』如何实现关闭c时刷新a
- 菜鸟谢了一个切换歌曲的方法,不知道为什么实现不了,貌似是因为获取不到<li>标签的内容
- 多个INPUT里的金额,自动合计到最后一个INPUT框里。
- Javascript实现super()。
<div class="wrapper"><input...
...
$(".wrapper").css({"display":"hidden"});
或Ext.getCmp('myradio').hide();
<html>
<head>
<title></title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
<style type="text/css">
#radio1,#radio2,#radio3{width:50px;height:20px;float:left;}
#radio4,#radio5,#radio6{position:absolute;left:-500px;}
#radio1{ background-color:#f5aece; }
#radio1.a{ background-color:red;}
#radio2{background-color:#aef5be;}
#radio2.a{ background-color:green;}
#radio3{ background-color:#aec6f5;}
#radio3.a{ background-color:blue;}
</style>
<script type="text/javascript">
$(function () {
//清空所有已选radio, 避免无法对应; 并隐藏
$("#pVirtulRadios :radio").removeAttr("checked");
//$("#pVirtulRadios :radio").removeAttr("checked").hide();
$("#pVirtulRadios label").click(function () {
$("#pVirtulRadios label").removeClass("a");
$(this).addClass("a");
});
});
function test() {
var $chkRadio = $("#pVirtulRadios :radio:checked");
if ($chkRadio.length == 0) {
alert("没有选中任何值.");
} else {
alert("您选中了: "+$chkRadio.val() );
}
}
</script>
</head>
<body>
<p id="pVirtulRadios" style="width:100%;" >
<label id="radio1" for="radio4" ></label>
<label id="radio2" for="radio5" ></label>
<label id="radio3" for="radio6" ></label>
<input type="radio" name="p" id="radio4" value="第1个" />
<input type="radio" name="p" id="radio5" value="第2个" />
<input type="radio" name="p" id="radio6" value="第3个" />
</p>
<br />
<div style="width:100%;float:left;" >
<input type="button" onclick="test()" value="测试您选中的radio" />
</div>
</body>
</html>
免费给你小子了吧, 呵呵。一点点改动, 将radio的样式改成绝对定位, 而且不再隐藏radio, 但是样式中定位在看不到的地方, 也相当于是隐藏吧。 我测试我的原代码在Chrome中是没有问题的, 但是在IE8中有问题。 只要不隐藏radio, 就可以。 修改后的代码, 兼容IE8/Chrome/Firefox。