2

jsfiddle.netで次のコードを使用すると、ライブプレビューが機能します。私自身のローカルコピーを実行し、何も...

チェックボックスは、ラジオボタンをクリックすると変化するはずです。

jsfiddleプレビュー:http ://jsfiddle.net/XqFDN/

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" ></script>
    <script>
        jQuery('#3day').click(function () {
            jQuery('#mon , #tue , #wed').attr('checked', true);
        });
        jQuery('#2day , #1day').click(function () {
            jQuery('#mon , #tue , #wed').attr('checked', false);
        });
    </script>
</head>

<body>
    <form>
        <input type="radio" name="passes" value="3day" id="3day" />3-Day
        <input type="radio" name="passes" value="2day" id="2day" />2-Day
        <input type="radio" name="passes" value="1day" id="1day" />1-Day
        <br />

        <input type="checkbox" name="mon" value="mon" id="mon" />Mon
        <input type="checkbox" name="tue" value="tue" id="tue" />Tue
        <input type="checkbox" name="wed" value="wed" id="wed" />Wed
        <br />
    </form>
</body>
</html>
4

1 に答える 1

8

jQueryコードをドキュメントレディハンドラーでラップする必要があります。これを試して:

<script type="text/javascript">
    jQuery(function() { // alternative: $(document).ready(function() {
        jQuery('#3day').click(function () {
            jQuery('#mon , #tue , #wed').attr('checked', true);
        });
        jQuery('#2day , #1day').click(function () {
            jQuery('#mon , #tue , #wed').attr('checked', false);
        });
    });
</script>

このエンクロージャーは、DOMがロードされたときにその中のコードが実行されることを保証します。現在、コードはclickまだ存在していない要素にイベントをアタッチしようとしています。

于 2013-01-14T12:46:09.823 に答える