繁体   English   中英

数据属性不存储值的问题

[英]Issue with data attributes not storing values

我试图记住和修改基于单选的值。 如果选择radio1,则它应读取value1和value 2的值,并将它们保存为数据属性“ previous-value”,然后将这些值设置为0或1。如果选择radio2,则value1应该设置为0,并且value2应该设置为先前值。 但是,这没有发生,以前的值数据似乎没有设置。 我没有任何控制台错误。 我想知道是否使用相同的操作设置值和更改值会导致问题。

$('input[type="radio"]').click(function() {
var $value1 = $('#value1');
var $value2 = $('#value2');

if($(this).attr('id') == 'radio1') { 
  $value1.data('previousvalue', $value1.val());
  $value1.val('1');

  $value2.data('previousvalue', $value2.val());
  $value2.val('0');


} else if($(this).attr('id') == 'radio2') {      
  $value1.val('0');
  $value2.val($value2.data('previousvalue'));
}
});

首先,您执行一个queryselectorAll以便获得所有输入类型单选。 它返回一个节点列表 在使用“ for ”对其进行循环之后,在该循环中执行条件“ if”,以验证radioButtons[i]是否被radioButtons[i] 如果是这种情况,它将显示一条消息,显示selectedOne

试试这个代码:

let radioButtons=document.querySelectorAll(input[type="radio"]); 
for(let i=0,c=radioButtons.length;i<c;i++){
    if(radioButtons[i].checked){
        alert("am the selectedOne "+radioButtons [i]);
      }
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM