更清晰/更强大的方法来编写Jquery更改函数使用:eq

时间:2015-11-11 20:07:40

标签: jquery

Hello Stackoverflow社区,

我的jquery更改功能似乎有点问题。基本上我有多组Yes或NO单选按钮,它们嵌套在div中。每个div都有相同的类,结构等,这就是我选择使用:eq选择器的原因。

目标:点击某个单选按钮后,其他几个按钮应自动检查。我的代码中有大约8种不同的这些函数集。我的解决方案如下(请记住,我有大约8-9套这些)。问题在于它有时候有点滑稽(并不总是有效),而且最重要的是我对Yes或No单选按钮的不同部分有多个语句,我正在寻找一种更清晰,更强大的写入方式此

    $("input.yesno-radio-button:eq( 40 )").change(function () {

                if ($('input.yesno-radio-button').prop("checked")) {

                    $("input.yesno-radio-button:eq( 43 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 45 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 47 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 49 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 51 )").prop("checked", true);

                }

            });

            $("input.yesno-radio-button:eq( 42 )").change(function () {

                if ($('input.yesno-radio-button').prop("checked")) {

                    $("input.yesno-radio-button:eq( 41 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 45 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 47 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 49 )").prop("checked", true);
                    $("input.yesno-radio-button:eq( 51 )").prop("checked", true);


                }

            });

这是html结构。我只包含部分HTML

<div id="survey-yesno-questions">
<div class="yesno-question-row" data-answerid="1097056" style="padding: 7px 0px 0px;">
<span class="yesno-question">1) Is the 3TG intentionally added to your product?</span>
<span class="yesno-answer" style="display: none;"><span class="yesno-radio required">
<span class="yesno-comment"> <textarea class="yesno-textarea ui-widget-content">
</textarea></span></span>
</div>
<div class="yesno-question-row" data-answerid="1097057">
  <span class="yesno-question">1a) Tantalum</span>
 <span class="yesno-answer">
<span class="yesno-radio required">
<input class="yesno-radio-button" type="radio" name="yesno1097057" value="Yes" checked="">Yes 
<input class="yesno-radio-button" type="radio" name="yesno1097057" value="No" undefined="">No</span>

<span class="yesno-comment"> <textarea class="yesno-textarea ui-widget-content"></textarea></span></span>
</div>
<div class="yesno-question-row" data-answerid="1097058">
<span class="yesno-question">1b) Tin</span>

<span class="yesno-answer"><span class="yesno-radio required">
<input class="yesno-radio-button" type="radio" name="yesno1097058" value="Yes" checked="">Yes 
<input class="yesno-radio-button" type="radio" name="yesno1097058" value="No" undefined="">No</span>

<span class="yesno-comment"> <textarea class="yesno-textarea ui-widget-content"></textarea></span></span>
</div>
</div>

0 个答案:

没有答案