通过选中标记单选按钮来增加int

时间:2014-07-07 23:44:24

标签: javascript

我有一大堆单选按钮按以下方式格式化;

<input type="radio" name="Xch" value="XCheese " onclick="incrementIndex()">XCheese<br>

我的incrementIndex()功能很简单;

var index = 0;

function incrementIndex() {
    index += 1;
    document.getElementById("demo").innerHTML = ""+index+"";

    if ($("#Xch").attr("checked") == true){
        index = 10;
    }
}

当单击radiobutton时,它会增加索引,但我希望它增加索引一次,并且只有在没有选中按钮时,设置方式,即使选中了Xch单选按钮,它也会保持不变递增索引!请帮忙。

3 个答案:

答案 0 :(得分:0)

您所做的事情并不完全清楚,但如果您想要所需的行为,请将index += 1移到if语句中,以检测它是否已经过检查。如果不是,那么你可以增加。

类似的东西:

var index = 0;

function incrementIndex() {

    document.getElementById("demo").innerHTML = ""+index+"";

    if ($("#Xch").attr("checked") == true){
        index = 10;
    }
    else {
        index += 1;        
    }
}

答案 1 :(得分:0)

您需要使用checkbox代替radiobox 在广播组中,一旦选择了输入,组中的一个输入必须始终保持选中状态 在复选框组中,可以选择或取消选择任何数字。

将您的HTML更改为:

<input type="checkbox" name="Xch" value="XCheese " onclick="incrementIndex()">XCheese<br>

它应该有用。

答案 2 :(得分:0)

不确定你为什么要做这样的事情,但这是你想要做的事情吗?

<input type="radio" name="ch" value="XCheese " onclick="incrementIndex(this)">XCheese</input><br>
<input type="radio" name="ch" value="YCheese " onclick="incrementIndex(this)">YCheese</input><br>
<input type="radio" name="ch" value="ZCheese " onclick="incrementIndex(this)">ZCheese</input><br>


var index = 0;
var previousValue;
function incrementIndex(e)
{    
    if(e.checked && e != previousValue) index += 1;
    previousValue = e;
    alert(index);
} 

这是一个例子 http://jsfiddle.net/Md8fj/134/