用图像替换Radio Box(Javascript或Jquery)

时间:2012-08-15 03:22:33

标签: javascript jquery css

我目前正在一个独特的图像上覆盖一个单选框(在stackoverflow上找到帮助:How can I display the checkbox over the images for selection?http://jsfiddle.net/erSBP/1/),它就像示例一样工作。

但是,我想删除收音机框,以便只保留唯一的图像并且可以点击,并像正常的单选按钮一样发送检查的值。

收音机输入ID是动态生成的,因此我无法指定它们的名称。

有没有办法用Javascript或JQuery做到这一点?

我目前的配置是:

<div class="answer">
<div class="answer-image">
<img style="border-width:0px;" src="/images/white.jpg">
</div>
<input id="Questions8404" type="radio" onclick="javascript:setTimeout('__doPostBack(\'965968404\',\'\')', 0)" value="8404" name="96596">
</div>

2 个答案:

答案 0 :(得分:1)

你的代码搞砸了。首先,不要使用setimeout。只需要调用dopostback。其次,你在onlick属性上使用了一个javascript url。不要这样做,除非你通过href属性调用它,谁知道是什么原因。总而言之,不要使用javascript网址。这是您的代码应该是什么样子

<div class="answer">
<div class="answer-image">
<img style="border-width:0px;" src="/images/white.jpg">
</div>
<input id="Questions8404" type="radio" onclick="__doPostBack(\'965968404\',\'\')" value="8404" name="96596">
</div>

答案 1 :(得分:0)

如果您希望使用复选框执行此操作,则可以使用jquery

执行此类操作
$(document).ready(function () {
    $(".answer").each(function() {
        var p = $(this).find("input:checkbox");
        p.hide();
        $(this).find("img").click(function() {
            p.prop("checked", true);
        });
    });
});

因为这会将输入设置为隐藏,并触发单击事件以选中复选框。它将匹配图像和输入,包含在相同的&#34;答案&#34; DIV。你可以调整它来使用收音机,你只需要知道你想要选择哪个选项。