在一个函数中使用多个if语句?

时间:2017-04-09 22:20:51

标签: javascript jquery if-statement

每当选中某个复选框时,我想在URL中添加文本。 我想我只是为每个复选框添加多个if语句,但这不起作用。

$("#button1").on("click", function(){
    url = "";
    if (auswahl_index1[0].checked) {
        url = page + option_0;
    }
    if (auswahl_index2[0].checked) {
        url = page + option_1;
    }
    window.location.href = url; 
});

var auswahl_index1 = document.getElementById('yes1');
var auswahl_index2 = document.getElementById('no1');
var auswahl_index1 = document.getElementById('yes2');
var auswahl_index2 = document.getElementById('no2');
var page = "http://stackoverflow.com";
var url = page; 

$("#button1").on("click", function(){
	url = "";
	if (auswahl_index1[0].checked) {
		url = page + "test1";
	}
	if (auswahl_index2[0].checked) {
		url = page + "test2";
  }
  if (auswahl_index3[0].checked) {
		url = page + "test3";
	}
	if (auswahl_index4[0].checked) {
		url = page + "test4";
  }
  	window.location.href = url;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
  <input type="radio" name="rdo1" id="yes1"/>
  <input type="radio"  name="rdo1" id="no1"/>
  <input type="radio" name="rdo2" id="yes2"/>
  <input type="radio"  name="rdo2" id="no2"/>
<button type="button" id="button1">Button</button>

我试着研究还有什么要做,而我发现的所有内容都是使用“else if”作为第二个陈述。 Hovever既不会工作也不会因为那意味着它只会在第一个语句为false时激活,但同时两者都应该能够添加到url。

很抱歉,如果这是一个愚蠢的问题,我只是jquery的新手,我无法通过google我的问题找到任何东西。 如果您需要有关我的问题的更多信息,请询问:)

1 个答案:

答案 0 :(得分:0)

我知道在过去我遇到过使用.checked复选框的问题。

.prop似乎解决了很多问题。

如果其.prop(&#39;已检查&#39;,&#39;已检查&#39;)或.prop(&#39;已检查&#39;)尝试,则不是100%。

还要注意:如果它们是复选框,则意味着可以检查其中的多个复选框。请改用单选按钮。

var auswahl_index1 = document.getElementsByClassName('yes1');
var auswahl_index2 = document.getElementsByClassName('no1');


$("#button1").on("click", function(){
    url = "";
    if (auswahl_index1.prop('checked')) {
        url = page + option_0;
    }else if(auswahl_index2.prop('checked')) {
        url = page + option_1;
    } else {
       console.log('say something');
       return null;
    }
    window.location.href = url; 
});

您可以执行的替代功能是,为每个复选框添加相同的类:

$('.class-added').change(function(){
    url = "";
    if (auswahl_index1.prop('checked')) {
        url = page + option_0;
    }
    else if (auswahl_index2.prop('checked') {
        url = page + option_1;
    }
    window.location.href = url;
});