Я использую XHTML, JSF и JavaScript для создания формы, проверяю, что информация была отправлена в выбранные поля onclick в ah: commandButton, и если она проверена, перенаправляйте на другую страницу homepage.xhtml. Все работает до перенаправления, и я не могу работать.Как визуализировать новую страницу в скрипте javascript
В функции JavaScript Validation(), я пробовал location = "homepage.xhtml", window.location.href = "homepage.xhtml", location.url = "homepage.xhtml" и несколько других, но ничего не работает. У меня есть ощущение, что у меня должно быть какое-то утверждение, которое добавляет href = "homepage.xhtml" в h: commandButton, если Validate() возвращает true, но я не уверен, как это сделать.
Любая помощь очень ценится. Я добавил соответствующий код ниже.
Кнопка:
<h:commandButton class="btn btn-warning" value="Continue" onclick="Validation()"/>
Validation
function Validation() {
var nameCheck = document.getElementById('formdiv:cardName');
var numCheck = document.getElementById('formdiv:cardNumber');
var expCheck = document.getElementById('formdiv:expDate');
console.log(nameCheck.value);
console.log(numCheck.value);
console.log(expCheck.value);
var variablesToCheck = [nameCheck, numCheck, expCheck];
for(i=0; i < variablesToCheck.length; i++){
if(variablesToCheck[i].value == null || variablesToCheck[i].value == ""){
alert("Fields marked with a * must be completed");
return false;
}
}
// This is where the redirection needs to go, I think...
return true;
}
EDIT: Просто заметил, что если еще утверждение неверно логически, но синтаксически это не должно иметь значение. Часть else должна быть оператором вне цикла без условия; этот код просто пытается перенаправить, когда поле он проверяет есть что-то, не тогда, когда все поля имеют что-то в
EDIT 2:. Петля исправлен
Не следует ли перенаправлять после цикла for? –
@ JasperdeVries Да, я сам это заметил. Внесены изменения сейчас – CGurrell
http://stackoverflow.com/questions/15515946/how-to-validate-a-field-in-jsf –