在 JQuery 中使用 AND 和 OR 选择选择单选按钮组合后,如何为输入字段设置不同的值?

爸爸

所以问题是:我有 6 对单选按钮,每个按钮代表一个“是/否”语句。

我还4 read-only输入了(1 or 0)在用户选择radio按钮组合后需要为其分配值的字段

问题是有赋值规则:

  1. 如果(question 1)OR(question 2)“yes”-> combi(1) =1, combi(2, 3, 4)=0(这很简单。我的代码有效)

  2. 如果(question 3)OR (question 4)OR(question 5)“yes”-> combi(2) =1, combi(1,2,4)=0(这很简单。我的代码有效)

  3. 如果(question 1) AND [(question 2) OR (question 3) OR (question 4)]“yes”-> combi(3)=1, combi(1,2,4)=0 (这是问题 1)

  4. 如果(question 1) AND [(question 2) OR (question 3) OR (question 4)] AND (question 5)“yes”-> combi(4)=1, combi(1,2,3)=0 (这是问题 2)

  5. 如果(question 1,2,3,4,5)NO-> combi(1,2,3,4)=0(这很容易。我的代码有效)

问题短期-我需要做一个ANDOR选择的JQuery基础上,选择按钮。所以这是我的代码。我认为第三和第四“else if”选择错误

Question 1
<input id="q1a" type="radio" name="q1"> yes
<input id="q1b" type="radio" name="q1"> no
<br/>
Question 2
<input id="q2a" type="radio" name="q2"> yes
<input id="q2b" type="radio" name="q2"> no
<br/>
Question 3
<input id="q3a" type="radio" name="q3"> yes
<input id="q3b" type="radio" name="q3"> no
<br/>
Question 4 
<input id="q4a" type="radio" name="q4"> yes
<input id="q4b" type="radio" name="q4"> no
<br/>
Question 5
<input id="q5a" type="radio" name="q5"> yes
<input id="q5b" type="radio" name="q5"> no
<br/>
Question 6
<input id="q6a" type="radio" name="q6"> yes
<input id="q6b" type="radio" name="q6"> no
<br/>

<input id="combi1" type="text" readonly="true">Combi1<br/>
<input id="combi2" type="text" readonly="true">Combi1<br/>
<input id="combi3" type="text" readonly="true">Combi1<br/>
<input id="combi4" type="text" readonly="true">Combi1<br/>

JQuery 
$('input').click(function(e){
if ($('#q1a').is(':checked') ||
$('#q2a').is(':checked')){
$('#combi1').val(1) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
else if ($('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked')){
$('#combi1').val(0) &&
$('#combi2').val(1) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
else if ($('#q1a').is(':checked') &&
$('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked')){
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(1) &&
$('#combi4').val(0);
}
else if ($('#q1a').is(':checked') &&
$('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked') &&
$('#q6a').is(':checked')) {
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(1);
}
else if ($('#q1b').is(':checked') &&
$('#q2b').is(':checked') &&
$('#q3b').is(':checked') &&
$('#q4b').is(':checked') &&
$('#q5b').is(':checked')){
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
})
爸爸

我解决!方法如下:首先,我确实修改了逻辑,记住|| 停在第一个真正的声明&&在第一虚列停止-这意味着我把最复杂的组合作为第一位的if / else序列和最简单的去年。然后我按照jmcgriz的建议添加了一个额外的括号来组合 && 和 || 适当地。现在它起作用了!

这是工作代码。如果有人有更好或更短的版本,我会为它打开!!!

$('input').click(function(e){
if ($('#q1a').is(':checked') &&
$('#q6a').is(':checked') &&
($('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked'))) {
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(1);
}
else if (($('#q1a').is(':checked')) &&
($('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked'))){
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(1) &&
$('#combi4').val(0);
}
else if ($('#q3a').is(':checked') ||
$('#q4a').is(':checked') ||
$('#q5a').is(':checked')){
$('#combi1').val(0) &&
$('#combi2').val(1) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
else if ($('#q1a').is(':checked') ||
$('#q2a').is(':checked')){
$('#combi1').val(1) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
else {
$('#combi1').val(0) &&
$('#combi2').val(0) &&
$('#combi3').val(0) &&
$('#combi4').val(0);
}
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在jQuery中使用选择输入追加和删除div

来自分类Dev

使用jQuery检查单选按钮时保存隐藏字段和单选输入值的值

来自分类Dev

在jQuery中使用和

来自分类Dev

如何在jquery中使用名称和属性设置选中的单选按钮?

来自分类Dev

使用JQuery设置选择选项的值和Array中的文本

来自分类Dev

使用JQuery设置选择选项的值和Array中的文本

来自分类Dev

在Jquery Ajax中使用选择器和$(this)

来自分类Dev

如何使用empty和append函数在jQuery中设置选择选项

来自分类Dev

如何在jquery中使用append和if条件后

来自分类Dev

如何使用jQuery在MVC中选择其他单选按钮时使div可见和隐藏?

来自分类Dev

如何在jQuery日期和时间选择器中使用javascript / jQuery调整时区?

来自分类Dev

在jQuery中使用next和parent获取隐藏的输入

来自分类Dev

jQuery:如何在表中使用“>”和children()

来自分类Dev

如何在 angular 2 中使用 jQuery .on() 和 .off() 的方式?

来自分类Dev

我如何使用jQuery基于localStorage预先选择选择框和复选框

来自分类Dev

如何在Jquery中使用类获取和放置这些特定字段的值

来自分类Dev

如何在js和jquery中使用val()获得输入值

来自分类Dev

在 jQuery 选择器中使用 option[value=""] 和对象中的标签选择

来自分类Dev

如何使用jquery从表中获取所有数据,包括输入和选择标签值?

来自分类Dev

如何使用Ajax和jQuery传递两个不同选择标签的值以进行处理?

来自分类Dev

在Ember中使用选择值和输入值进行操作

来自分类Dev

在WordPress中使用美元符号和jQuery

来自分类Dev

在Jquery和Ajax中使用preventDefault()

来自分类Dev

在JS / Jquery中使用.find()和.each()

来自分类Dev

在jQuery中使用.children和.find

来自分类Dev

在JS / Jquery中使用.find()和.each()

来自分类Dev

在 Gridview 中使用 TemplateField 和 jQuery Datatable

来自分类Dev

如何使用蚂蚁设计和反应在选择选项内添加输入字段

来自分类Dev

想要在jQuery中使用选择标签隐藏和显示元素

Related 相关文章

  1. 1

    在jQuery中使用选择输入追加和删除div

  2. 2

    使用jQuery检查单选按钮时保存隐藏字段和单选输入值的值

  3. 3

    在jQuery中使用和

  4. 4

    如何在jquery中使用名称和属性设置选中的单选按钮?

  5. 5

    使用JQuery设置选择选项的值和Array中的文本

  6. 6

    使用JQuery设置选择选项的值和Array中的文本

  7. 7

    在Jquery Ajax中使用选择器和$(this)

  8. 8

    如何使用empty和append函数在jQuery中设置选择选项

  9. 9

    如何在jquery中使用append和if条件后

  10. 10

    如何使用jQuery在MVC中选择其他单选按钮时使div可见和隐藏?

  11. 11

    如何在jQuery日期和时间选择器中使用javascript / jQuery调整时区?

  12. 12

    在jQuery中使用next和parent获取隐藏的输入

  13. 13

    jQuery:如何在表中使用“>”和children()

  14. 14

    如何在 angular 2 中使用 jQuery .on() 和 .off() 的方式?

  15. 15

    我如何使用jQuery基于localStorage预先选择选择框和复选框

  16. 16

    如何在Jquery中使用类获取和放置这些特定字段的值

  17. 17

    如何在js和jquery中使用val()获得输入值

  18. 18

    在 jQuery 选择器中使用 option[value=""] 和对象中的标签选择

  19. 19

    如何使用jquery从表中获取所有数据,包括输入和选择标签值?

  20. 20

    如何使用Ajax和jQuery传递两个不同选择标签的值以进行处理?

  21. 21

    在Ember中使用选择值和输入值进行操作

  22. 22

    在WordPress中使用美元符号和jQuery

  23. 23

    在Jquery和Ajax中使用preventDefault()

  24. 24

    在JS / Jquery中使用.find()和.each()

  25. 25

    在jQuery中使用.children和.find

  26. 26

    在JS / Jquery中使用.find()和.each()

  27. 27

    在 Gridview 中使用 TemplateField 和 jQuery Datatable

  28. 28

    如何使用蚂蚁设计和反应在选择选项内添加输入字段

  29. 29

    想要在jQuery中使用选择标签隐藏和显示元素

热门标签

归档