Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Div单选按钮_Jquery_Html_Css - Fatal编程技术网

Jquery Div单选按钮

Jquery Div单选按钮,jquery,html,css,Jquery,Html,Css,我在这里和网上看到了一些答案,但由于我需要问其他问题,我提出了这个问题我好像什么也做不到 因此,我想要的是Yes和No选项,这些将是按钮,当按下它们时,它们将保持活动状态,因为它们将根据这些值在页面上显示div 例如: 是=您赢了 否=您丢失了 这些div将显示在按钮下。我的问题是如何从div中获取值?我试着在里面用单选按钮让它工作,但我似乎做不到 到目前为止我所拥有的 HTML: jQuery: 所以按钮看起来会像这样,按下时会改变背景,还会提出另一个问题等等。。。在同一页上会有多个问题和答

我在这里和网上看到了一些答案,但由于我需要问其他问题,我提出了这个问题我好像什么也做不到

因此,我想要的是
Yes
No
选项,这些将是按钮,当按下它们时,它们将保持活动状态,因为它们将根据这些值在页面上显示
div

例如:

是=
您赢了

否=
您丢失了

这些div将显示在按钮下。我的问题是如何从div中获取值?我试着在里面用单选按钮让它工作,但我似乎做不到

到目前为止我所拥有的

HTML: jQuery:

所以按钮看起来会像这样,按下时会改变背景,还会提出另一个问题等等。。。在同一页上会有多个问题和答案

编辑:
忘记添加我希望单选按钮不可见,因此它看起来像是选择了
div
,没有单选按钮。很抱歉在编写问题时没有添加该属性。

您可以在DIV中包含data属性

看看你的JSFIDLE,我对HTMl和Jquery做了一些修改:

那怎么办

jQuery非常简单:

$('input[name="options"]').click(function () {
    $('.optiontest').removeClass('optiontest')
    $(this).closest('.option').toggleClass('optiontest')
});
我修改了你的HTML,给了单选按钮值(你把它设置为ID)和相同的名称,这给了它们正确的单选按钮行为

<div class="buttonHolder">
    <div class="option">Yes
        <input name="options" value="yes" type="radio" />
    </div>
    <div class="option">No
        <input name="options" value="no" type="radio" />
    </div>
</div>

对
不

这可能会有帮助:-


对
不

数据
属性将帮助您解决问题,即
数据是
数据否
好,这很有意义,我忘了在我的问题中说我真的不希望单选按钮可见。很抱歉,现在更新我的问题。使用这个,不需要单选按钮,是吗?使用此
数据
属性时。是。。。你可以完全删除单选按钮,如果你想。。。更新了您的JSFIDLE。。谢谢你的回答,我编辑了我的问题,因为我忘记了一个关键点。但这正是我想要的,但是没有单选按钮。
$('.option').click(function () {
    var $this = $(this);
    var input = $this.find('input');
    $('.optiontest').toggleClass('optiontest');
    $(input).prop('checked', true);
    $(this).toggleClass('optiontest');

});
 $('.option').click(function () {
        var $this = $(this);
        var input = $this.find('input');
        $('.optiontest').toggleClass('optiontest');
        $(input).prop('checked', true);
        $(this).toggleClass('optiontest');
        var dataValue = $this.data("optionvalue"); // using data attribute to put the value
        alert(dataValue);
    });
$('input[name="options"]').click(function () {
    $('.optiontest').removeClass('optiontest')
    $(this).closest('.option').toggleClass('optiontest')
});
<div class="buttonHolder">
    <div class="option">Yes
        <input name="options" value="yes" type="radio" />
    </div>
    <div class="option">No
        <input name="options" value="no" type="radio" />
    </div>
</div>
<div class="buttonHolder">
<div class="option1">Yes

</div>
<div class="option2">No

</div>