我想在某些輸入內的值爲空時另一個元素爲空時向元素添加一個類。Javascript函數IF聲明不起作用
由於某種原因,它只是登陸else語句,我以爲我使用正確的語法來發送多個參數,但也許我錯了。
任何想法?
var btnElementRegistro = document.getElementById('btnGuardar');
btnElementRegistro.addEventListener('click' , validar);
function validar(){
var elementNombre = document.getElementById('txtNombre'),
elementApellido1 = document.getElementById('txtApellido1'),
elementCel = document.getElementById('numCelular');
addClass(txtNombre,txtApellido1,numCelular);
}
function addClass(pName, pApellido, pCel){
if(pName.value === '' && pApellido === '' && pCel ===''){
pName.className = "error";
pApellido.className = "error";
pCel.className = "error";
}else{
pName.className = "noError";
pApellido.className = "noError";
pCel.className = "noError";
}
}
在此先感謝。
編輯:我想要使用if/else,以便我可以調用另一個函數來顯示一個div(PopUp)時添加.noError。
var elementoVerInfo = document.getElementById('btnGuardar'),
elementoBotonCerrar = document.getElementById('btnCerrar');
elementoVerInfo.addEventListener('click', function() {
displayPopUp('popUpCorrecto2');
});
elementoBotonCerrar.addEventListener('click', function() {
hidePopUp('popUpCorrecto2');
});
function displayPopUp(pIdDivToShow){
var fElementDivToShow = document.getElementById(pIdDivToShow),
newClass ='';
newClass = fElementDivToShow.className.replace('hide','');
fElementDivToShow.className = newClass + ' show';
}
function hidePopUp(pIdDivToShow){
var fElementDivToShow = document.getElementById(pIdDivToShow),
newClass ='';
newClass = fElementDivToShow.className.replace('show','');
fElementDivToShow.className = newClass + ' hide';
}
你應該傳遞變量名字 - 'addClass(elementNombre,elementApellido1,elementCel);'等等,而不是ID的的這些變量('txtNombre','txtApellido1'和'numCelular')。 – lifetimes
您只檢查其中一個變量的值... if(pName.value ===''&& pApellido ===''&& pCel ==='') –
當您調試應用程序時,是參數定義?我猜測其中一個或全部都是未定義的,並且使你的平等陳述是錯誤的。 – VtoCorleone