#javascript #jquery
#javascript #jquery
Вопрос:
Мне нужно выяснить, как добавить больше значений, чем просто 33498, есть идеи?
function checkThis(){
var val = document.getElementById('myText').value;
var myForm = document.getElementById('myForm');
if(val=="33498")
myForm.action="url1.html";
else
myForm.action="url2.html";
}
Ответ №1:
http://www.w3schools.com/js/js_switch.asp
switch (val) {
case "33498":
myForm.action="url1.html";
break;
case "xxx":
case "yyy":
myForm.action="another.html";
break;
default:
myForm.action="url2.html";
}
Комментарии:
1. есть ли способ добавить несколько параметров в случае?
2. Например: регистр «33498», «33497»:
3. Я не уверен в правильном синтаксисе
4. Быстрый вопрос, как мне заставить эти страницы делать «_blank» для открытия на новой странице?
Ответ №2:
function checkThis() {
var val = document.getElementById('myText').value;
var myForm = document.getElementById('myForm');
if (val == "33498") {
myForm.action = "url1.html";
} else if (val == "this") {
myForm.action = "url2.html";
} else if (val == "that") {
myForm.action = "url3.html";
} else if (val == "the other") {
myForm.action = "url4.html";
} else {
// if all else fails
}
}
Ответ №3:
Вам сказали, что вы используете jQuery….
Так document.getElementById('myText').value;
что может быть просто: $('#myText').val();
…и document.getElementById('myForm');
может быть просто: $('#myForm')
.
Вам также не хватает различных скобок, { }
, после вашего if()
утверждения.
Вы бы добавили больше условных выражений к if()
оператору, используя else if
, например, так…
function checkThis(){
var val = $('#myText').val();
var myForm = $('#myForm');
if(val=="33498") {
myForm.action="url1.html";
} else if (val == "568") {
myForm.action="url3.html";
} else if (val == "999") {
myForm.action="url4.html";
} else {
myForm.action="url2.html"; // <--do this one if nothing else matches
}
}