0

タグの背後にあるフォーム要素を非表示にする CMS を使用しています。いくつかのシステムの癖のため、ラジオ ボタンを制御するチェックボックスを設定する必要がありました。いいえ」が選択されています。また、ラジオボタンのオプション「いいえ」をデフォルトでチェックしたいのですが、ラジオボタンのコード行を制御できません。

これのごく一部を行うJavascriptを見つけましたが、ボックスにチェックを入れたときにコンテンツを表示および非表示にするjQueryに統合したいと考えています。

これが私がこれまでに持っているものです:

$('#checkbox1').change(function() {
    $('#content1').toggle("slow");
});

私が持っているJavascriptはこれです:

function ticked(){
    var ischecked = document.getElementById("checkbox").checked;
    var collection = document.getElementById("hideradio").getElementsByTagName('INPUT');
    if(ischecked){collection[0].checked = true;}else{collection[0].checked = false;}
}

Javascript のバージョンを書いて、私の jQuery と統合するのを手伝ってくれませんか?

ありがとう、

4

5 に答える 5

0

このコードを試してください

</p>

$(function(){
    $('#checkbox1').on('click' , function() {
        var isChecked = $(this).is(':checked');
        if(isChecked){
           $('#radio1').attr('checked' , true);
            $('#content1').toggle("slow");
        }
        else{
            $('#radio1').attr('checked' , false);
        }
    });
});​

[フィドル]をチェック

于 2012-09-21T05:35:47.193 に答える
0

jsfiddle

$(document).on('change', '#checkbox', function() { toggle(this); });

var toggle = function(obj) {
    var checked = $(obj || '#checkbox').is(':checked');
    $(':radio[value=no]').prop('checked', !checked);
    $(':radio[value=yes]').prop('checked', checked);
    $('#content').toggle(checked);
}

toggle();
于 2012-09-21T06:54:04.880 に答える
0

これを試すことができます.htmlは次のようになっていると思います。

<input type="checkbox" id="checkbox1" /> Check Box

<div id="content1" >
    Some Content <br />
    Some Content <br />
    Some Content <br />
    Some Content
</div>

<div id="hideradio">
    <input type="radio" name="rgroup" value="yes" /> Yes
    <input type="radio" name="rgroup" value="no" />  No
</div>

JQuery

$(function(){
     $('#hideradio input[type=radio][value=no]').attr('checked',true);
     $('#content1').hide();
});

$('#checkbox1').on('change', function() {
    $('#content1').toggle("slow");
    var self = this;
    if(self.checked)
        $('#hideradio input[type=radio][value=yes]').attr('checked',true);
    else
       $('#hideradio input[type=radio][value=no]').attr('checked',true);
});

簡単なデモ

于 2012-09-21T05:44:27.913 に答える
0

正しく理解できない場合は、お知らせください。

あなたのHTMLコードがわからないので、提供します

<form>
    <input type="checkbox" name="test_ck" id="test_ck" />
    <br/>
    <input type="radio" name="test_radio" id="test_radio" />
</form>

<div id="content"> A content !!! </div>

とJavaScriptのjquery

$(function(){
    $("#test_ck").on("change", function(){
           $("#test_radio").prop("checked", $(this).is(":checked"));               
        $("#content").toggle("slow");
    });
});

例 -> jsfiddle

更新されたjsfiddle

http://jsfiddle.net/6wQxw/2/

于 2012-09-21T05:32:55.197 に答える