0

1 つの DOM イベントで 2 つのことを行う必要があります

これを使ってみましたがうまくいきません。

HTML

<input type="test" name="box" id="box" onkeyup="keyPressedBox(this)">
<input type="test" name="name" id="name" onkeyup="keyPressedName(this)">

<input type="checkbox" class="form-checkbox" checked="checked" id="sdp_1" name="sdp_1" />
<input type="checkbox" class="form-checkbox" checked="checked" id="sdp_2" name="sdp_2"/>

Javascript

<script>
     function keyPressedName(str) {
        if ($(str).val() != '') {
            $('#sdp_2').prop('checked', false);
        } else {
            $('#sdp_2').prop('checked', true);
        }

        return true;
    }

    function keyPressedBox(str) {
        if ($(str).val() != '') {
            $('#sdp_1').prop('checked', false);
        } else {
            $('#sdp_1').prop('checked', true);
        }
        return true;
    }


</script>

何か案は ?

4

1 に答える 1

0

このようなことをしてください

onkeypress="keyPressed();"

そしてkeyPressed。両方のinputボックスに2つの機能があります。関数は、

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
        function keyPressedName(str) {
            if ($(str).val() != '') {
                $('#sdp_2').prop('checked', false);
            } else {
                $('#sdp_2').prop('checked', true);
            }

            return true;
        }

        function keyPressedBox(str) {
            if ($(str).val() != '') {
                $('#sdp_1').prop('checked', false);
            } else {
                $('#sdp_1').prop('checked', true);
            }
            return true;
        }

    </script>

HTMLは

<input type="test" name="box" id="box" onkeyup="keyPressedBox(this)">

<input type="test" name="name" id="name" onkeyup="keyPressedName(this)">

JSフィドル

http://jsfiddle.net/RMEKh/2/

于 2013-01-23T04:34:53.463 に答える