knockout.js 从单选按钮组中获取选中的值

wz3gfoph  于 2022-11-10  发布在  其他
关注(0)|答案(3)|浏览(149)

我正在动态填充单选按钮,在单击提交按钮时,我需要从组中获取选中的单选按钮的值。

<ul data-bind="foreach: Numbers">
        <li>        
            <input name="phone-group" type="radio" data-bind="attr: {'id': $data.id}, value: $data.value" >
            <label data-bind="Text: $data.value, attr:{'for': $data.id }" ></label>
        </li>
</ul>
<button role="link">Submit</button>

这是模型:(咖啡脚本)
@数字= ko.可观察数组([{标识:“1”,值:“1234”},{标识:“2”,值:“5678”},{标识:“3”,值:“91011”}])
单击“提交”按钮时,我需要从单选按钮列表中选择值。

brjng4g3

brjng4g31#

考虑使用:

function getRBtn(rbName) {
      let opt = document.querySelector(`input[name=${rbName}]:checked`);
      return opt = (opt != null) ? opt.value : 'memo0';  // default value 'memo0'
    }
    // rbName is the radio button name value
    // opt.value is the value associated with the radio button
    // 'memo0' is a default value if no radio buttons have been selected.
pxiryf3j

pxiryf3j2#

我不知道如何在CoffeeScript中获取checked值,但是在JavaScript中,通过在输入上使用name属性,可以使用document.querySelector()方法获取checked值:

let checkedValue = document.querySelector('input[name="phone-group"]:checked').value;
console.log(checkedValue);
rjzwgtxy

rjzwgtxy3#

要以knockoutjs的方式实现这一点,我能看到的唯一缺失是您没有使用checked绑定来获取选定的值。
第一个

相关问题