ui中未选中单选按钮,而是通过编程方式选中了该按钮

时间:2019-01-25 10:23:45

标签: javascript jquery radio-button

我必须使用名称会有所不同的单选输入,因此我需要使用jquery首先删除所有选中的单选,并仅按输入单选的相同名称和匹配的单击输入名称添加检查。

我正在尝试通过使用jquery以编程方式在单选按钮中添加选中状态,但这在ui上产生了问题。当我单击但正在提交表单时,它未被选中。

enter image description here

当我点击第一个电台时,它会带给我以下信息

https://imgur.com/a/1rpkLMv

这是我的jquery代码;

camperElement.imageContent.on('click', camperElement.standardRadio, function (e) {
            e.preventDefault();
            camperElement.hiddenStandard.attr('name',e.target.name);
            camperElement.hiddenStandard.val(e.target.value);
            camperElement.standardRadio.each(function () {
                if ($(this).attr('name') !== e.target.name) {
                    $(this).removeAttr('checked');
                }else{
                    $(this).prop('checked',true);
                    $(this).attr('checked','')
                    $(this)[0].checked = true;
                }
            });
        });

1 个答案:

答案 0 :(得分:0)

$("#important-radio").prop('checked', true);

应该可以,您确定$(this)选择了正确的元素吗?

您可以将整个图像包装到label元素中,而不是向图像添加点击侦听器

<label>
  <img src="https://via.placeholder.com/150" />
  #1
  <input type="radio" name="myRadio" value="first">
</label>
<label>
  <img src="https://via.placeholder.com/150" />
  #2
  <input id="important-radio" type="radio" name="myRadio" value="second">
</label>
<label>
  <img src="https://via.placeholder.com/150" />
  #3
  <input type="radio" name="myRadio" value="third">
</label>