首页 > 解决方案 > 我想交替、重复、单击或检查

问题描述

我正在使用不熟悉的英语句子,所以如果出现问题,我很抱歉。

复选框(等),取决于keydown操作,而不是重复,我想点击或确认。

例如,在同一个页面 span.ClapLv1FormRadioButton 元素中有多个类似复选框的东西。

$('Span.ClapLv1FormRadioButton')[2]

$('Span.ClapLv1FormRadioButton')[3]

$('Span.ClapLv1FormRadioButton')[4]

并假设每个都有一个您可以指定的元素。


$ (Window).keydown(function (e) {

  if (e.altKey && e.shiftKey && e.keyCode == 67) {

    $('Span.ClapLv1FormRadioButton')[2].checked;

    $('Span.ClapLv1FormRadioButton')[3].checked;

    $('Span.ClapLv1FormRadioButton')[4].checked;

    $('Span.ClapLv1FormRadioButton')[2].checked;

    repetition.check;

  });

});

我想让它像上面那样工作。如果您连续按相同的键码,您想通过交替重复来检查它。

我还参考了以下站点,但我无法实现我预期的行为。

https://www.clarenet.co.jp/column/coding/jquery%E3%81%A7%E3%80%81%E9%A0%86%E7%95%AA%E3%81%AB%E5% AE%9F%E8%A1%8C%E5%87%BA%E6%9D%A5%E3%82%8B-完成后/

如何实现我需要的功能?

请教我。

操作环境 Windows 10 Chrome 64bit https://chrome.google.com/webstore/detail/css-and-javascript-inject/ckddknfdmcemedlmmebildepcmneakaa

标签: javascriptjquery

解决方案


我明白英语不是您的语言……感谢您的努力。

如果您连续按相同的键码,您想通过交替重复来检查它。

我想你想要这样的东西(虽然真的不确定!!)

var activeRadio = 0;
$(window).on("keydown", function (e) {

  if (e.altKey && e.shiftKey && e.keyCode == 67) { // ALT+SHIF+c
    $('.ClapLv1FormRadioButton').eq(activeRadio).prop("checked", true);
  }

  activeRadio = (activeRadio+1 > $(".ClapLv1FormRadioButton").length-1) ? 0 : activeRadio+1
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Hit [ALT]+[CTRL]+[C] to cycle the radio inputs...<br>
<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">1<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">2<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">3<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">4<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">5<br>
<input type="radio" class="ClapLv1FormRadioButton" name="somename">6<br>


推荐阅读