3

これは本当に頭痛の種です。フォームに 3 つのチェックボックスがあり、ラベルには CSS で設定された背景画像があります。問題は、JavaScript を使用して画像をクリックしたときに現在の画像から 2 番目の画像に変更するにはどうすればよいかということです。チェックボックスを選択します。私がjavascriptについて知っていることから、それはうまくいくはずです、何かアイデアはありますか? また、7 および 8 の以前の問題により、このようにする必要があります。

HTML

<input type="checkbox" name="interest1" id="interest1" value="interested"style="display:block">
<input type="checkbox" name="interest2" id="interest2" value="interested"style="display:block">
<input type="checkbox" name="interest3" id="interest3" value="interested"style="display:block">
<p align="center">
<label for="interest_inet" id="label-interest1" onClick="func()"></label>

CSS:

label {
    border:1px solid red;
    display:inline-block;
}

#label-interest1 {
    background-image: url(images/internetbutton.gif);
    width: 152px;
    height:152px;
}

JavaScript:

<script type="text/javascript">
function func()
{
    if(document.getElementById('interest_inet').checked)
    {
        document.getElementById('label-interest1').style.backgroundImage=url(images/internetbutton.gif);
    }
    else
    {
        document.getElementById('label-interest1').style.backgroundImage=url(internetbuttonchecked.gif);
    }
}
</script>

これがライブコードの例です

4

1 に答える 1

8

いくつかの引用符が欠けているようです(の値はstyle.backgroundImage文字列でなければなりません):

function func()
{
    var label = document.getElementById('label-interest1');
    if(document.getElementById('interest_inet').checked)
    {
        label.style.backgroundImage = 'url(images/internetbutton.gif)';
    }
    else
    {
        label.style.backgroundImage = 'url(internetbuttonchecked.gif)';
    }
}
于 2013-01-09T00:46:09.000 に答える