0

私は HTML DOM が初めてです。チェックボックスがオンになっているときに値を変更しようとしています。だからここに私の未完成のスクリプトがあります:

<html>
<script type="text/javascript">
var val=12;
document.write("<p>"+val+"</p>");
function checkAddress()
{
    var chkBox = document.getElementById('checkAddress');
    if (chkBox.checked)
    {
        var val=val+2;
    }
}
function checkAddress2()
{
    var chkBox = document.getElementById('checkAddress2');
    if (chkBox.checked)
    {
        var val=val+3;
    }
}
function checkAddress3()
{
    var chkBox = document.getElementById('checkAddress3');
    if (chkBox.checked)
    {
        var val=val+4;
    }
}
</script>
<p>Get value :<input type="checkbox" id="checkAddress" name="checkAddress"    onclick="checkAddress()" value="1st"/>
Get value :<input type="checkbox" id="checkAddress2" name="checkAddress" onclick="checkAddress2()" value="2nd"/>
Get value :<input type="checkbox" id="checkAddress3" name="checkAddress" onclick="checkAddress3()" value="3rd"/>

ここで、このスクリプトを作成したいだけです。チェックボックスをクリックすると、値が自動に変更されます。

4

1 に答える 1

1

まず、値が失われることを意味するたびに {} 内で val を宣言します。

第二に、val を有用にするために何もしません。

最後に、クリックされた特定のチェックボックスを渡す関数を 3 つではなく 1 つにすることができます。

さらに、コメントに記載されているように、要素に val を割り当てません (.innerHtml、textarea などを使用)。つまり、価値が見られません。

 <html>

<script type="text/javascript">
var val=12;

function resetCheckboxes()
{
document.getElementById("checkAddress").checked=false;
document.getElementById("checkAddress2").checked=false;
document.getElementById("checkAddress3").checked=false;
}

function checkAddress(chkBox)
{
    var multiplyer = 1;

    if (!chkBox.checked)
    multiplyer = -1;

    if(chkBox.id =="checkAddress")
    val=val+ (multiplyer)*2;

    else if(chkBox.id =="checkAddress2")
    val=val+ (multiplyer)*3;

    else if(chkBox.id =="checkAddress3")
    val=val+ (multiplyer)*4;

    document.getElementById("displayValue").innerHTML = "Val:"+val;
}
</script>

<body onLoad="resetCheckboxes()">
<div id="displayValue">Val:12</div>
<p>Get value :<input type="checkbox" id="checkAddress" name="checkAddress"    onclick="checkAddress(this)" value="1st"/>
Get value :<input type="checkbox" id="checkAddress2" name="checkAddress" onclick="checkAddress(this)" value="2nd"/>
Get value :<input type="checkbox" id="checkAddress3" name="checkAddress" onclick="checkAddress(this)" value="3rd"/>
</body>
</html>
于 2013-05-26T21:26:39.313 に答える