使用JavaScript设置RadioButtonFor的值

时间:2016-08-22 05:42:56

标签: javascript asp.net-mvc radio-button radiobuttonfor

我刚看到RadioButtonFor的实现,truefalse作为第二个参数,但如何使用JavaScript设置检查值?

我已经有一个现有代码,可以通过JavaScript中的ID设置已检查的单选按钮值,并且只在View中使用@Html.RadioButton。但我现在想要的是使用RadioButtonFor。我该怎么做呢?我的活动和非活动具有相同的Id,两个rbtn的值都不同。

PS:不工作的代码位于JavaScript的底部

型号:

[Display(Name = "Status")]
public string userStatus { get; set; }

查看:

@Html.LabelFor(m => m.userStatus)
@Html.LabelFor(m => m.userStatus, "Active")
@Html.RadioButtonFor(m => m.userStatus, true)
@Html.LabelFor(m => m.userStatus, "Inactive")
@Html.RadioButtonFor(m => m.userStatus, false)

Javascript的一部分:

//columnData - represents the column index in my table
//fieldId - id of the fields (e.g. text = userDesc, radio = userStatus)

for (i = 0; i < columnData.length; i++) {
    //Evaluates what type an input is
    var elmntType = document.getElementById(fieldId[i]).getAttribute("type");

    if (elmntType == "text") {

        document.getElementById(fieldId[i]).value = rowSelected.cells[i].innerHTML.trim();

    } else if (elmntType == "radio") {

        var status = rowSelected.cells[i].innerHTML.trim();

        //I just invented this but it's not working
        if (status == "Active") {
            document.getElementById(fieldId[i]).checked = true;
        } else {
            document.getElementById(fieldId[i]).checked = false;
        }
    }               
}

0 个答案:

没有答案