嗨,我有一个网站使用单选按钮来选择选项。如果你点击按钮本身,它不起作用(获得选择),但如果你点击按钮下面的文本,将不胜感激任何帮助。单选按钮不能在IE浏览器中工作9
顺便说一句如何将我只适用于IE9修补程序,因为所有在IE 6-8工作正常。
这是IE9的一个已知问题?
非常感谢
确定这里是固定的IE9问题的代码,但现在对于IE 8-6
<script type="text/javascript">
<!--
$(function()
{
inClickFunc=false;
var changeFunc = function()
{
if(!inClickFunc)
{
$(this).parent().click();
}
return false;
};
$("input[type=radio]").bind('change', changeFunc);
$("input[type=radio]").bind('propertychange', changeFunc);
$(".attinner").click(function()
{
inClickFunc=true;
var input=$("input", this);
$(".sub-values", $(this).parents(".middlecontent")).remove();
if(input.attr("checked"))
{
input.attr("checked", false);
}
else
{
input.attr("checked", true);
var div=this;
$.get("/js/product_options.php", {product_id: 1130, value_id: $(input).attr("value")}, function(result)
{
if(result)
{
$(div).parent().nextAll(".clear").eq(0).after(result);
}
});
}
inClickFunc=false;
});
$('.sub-value').livequery('click', function()
{
$("input", this).attr("checked", true);
});
$("[name=product]").submit(function()
{
var submit=false;
$.ajax(
{
type: 'POST',
async: false,
url: '/js/validate_product.php',
data: $(this).serialize(),
success: function(msg)
{
if(msg.length==0)
{
submit=true;
}
else
{
submit=false;
alert(msg);
}
}
});
return submit;
});
/*$(".middlecontent").each(function() {
$options = $(this).find('.attinner');
if($options.length == 1)
{
$options.click()
}
});*/
});
-->
</script><h2>Size (Height x Width x Depth)</h2>
<div class="middlecontent">
<div class="attribute-wide">
<div class="attinner">
<input type="radio" title="Values" name="values[23]" class="required" value="5325"><div class="attvalue">
1981mm x 686mm x 35mm<br>78" x 27" x 1.38"<br><span class="size-price">(£109.00)</span> </div>
</div>
</div>
<div class="attribute-wide">
<div class="attinner">
<input type="radio" title="Values" name="values[23]" class="required" value="5324"><div class="attvalue">
1981mm x 762mm x 35mm<br>78" x 30" x 1.38"<br><span class="size-price">(£109.00)</span> </div>
</div>
张贴一些代码。 – JackWilson
这是一些代码,这已经解决了IE9的问题,但现在不能在IE 8-6 – user1041401
你知道你可以使用'标签'来分配一个可点击的文本到单选按钮,而不必写一行的Javascript ?它会让你的生活更轻松,因为你不必担心事件冒泡和所有的东西,你只需要处理标签上的点击。你可以将标签放在标签内,这样你就可以将其显示为一个块元素来替换您现在获得的'attinner' div。 – GolezTrol