2012-03-16 1 views
0

У меня есть кнопка, которая отправляет форму.Сменить класс кнопки, когда введены входные данные формы

<input type="button" class="disabled" id="submitbutton" name="Continue" title="Continue" value="Continue" onclick="NextPage('CON');" /> 

Я хотел бы автоматически изменить класс кнопки от «отключен» на «включено» на основе значения входов в моей форме (которых довольно много комбинаций, то есть я не могу просто перечислите их все как нужно значение - есть условия для того, является ли вход обязательным).

Я хотел бы сделать это в JavaScript/Ajax/JQuery, поэтому изменение класса кнопки происходит, как только все необходимые входные данные действительны, а не какое-то обновление, чтобы выполнить проверку на стороне сервера.

Я не совсем уверен, с чего начать:

я имел что-то вдоль линий

function ChangeButton() 
{ 
if (document.forms[0].QUESTIONID.value != "") && (document.forms[0].QUESTIONIDTWO.value != "") etc etc.... 
{ 
document.getElementById('submitbutton').class = 'enabled'; 
} 
} 

Но я не мог заставить его работать - она ​​работает только для первого значения - Я положил onchange = «ChangeButton()» в раскрывающемся списке, чтобы проверить.

Если кто-то может дать мне несколько советов, я был бы чрезвычайно благодарен!

Спасибо за помощь до сих пор - скобка, кажется, где я неудача:

function ChangeButton() 
{ 
if 
((document.forms[0].IPR_TITL.value != "") && (document.forms[0].IPR_FNM1.value != "")     && (document.forms[0].IPR_FNM1.value != "") && (document.forms[0].IPR_SURN.value != "") && (document.forms[0].IPR_GEND.value != "") && (document.forms[0].IPR_DOB.value != "") && (document.forms[0].IPQ_CRIM.value != "") && (document.forms[0].IPQ_ETHC.value != "") && (document.forms[0].IPQ_DSBC.value != "") && (document.forms[0].IPQ_MARK1.value != "") && (document.forms[0].IPQ_NATC.value != "") && (document.forms[0].IPQ_COBC.value != "") && (document.forms[0].IPQ_COD.value != "") && (document.forms[0].IPQ_FIVE.value != "") && (document.forms[0].IPQ_PERM.value != "") && (document.forms[0].IPQ_VISF.value != "") && (document.forms[0].IPQ_A_USD.value != "") && (document.forms[0].IPR_HAD1.value != "") && (document.forms[0].IPR_HAD3.value != "") && (document.forms[0].IPR_HTEL.value != "") && (document.forms[0].IPR_HAEM.value != "") && (document.forms[0].IPQ_FEES.value != "") && (document.forms[0].IPQ_REF1TIT.value != "") && (document.forms[0].IPQ_REF1ORG.value != "") && (document.forms[0].IPQ_REF1POS.value != "") && (document.forms[0].IPQ_REF1AL1.value != "") && (document.forms[0].IPQ_REF1AL3.value != "") && (document.forms[0].IPQ_REF1AL5.value != "") && (document.forms[0].IPQ_REF1EMA.value != "") && (document.forms[0].IPQ_DISC.value != "")) 
&& 
((document.forms[0].IPQ_PERM.value != "") && (document.forms[0].IPQ_FIVE.value != "N")) 
&& 
((document.forms[0].IPQ_AGNT.value != "") && (document.forms[0].IPQ_A_USD.value != "Y")) 
&& 
((document.forms[0].IPQ_CSTRT.value != "") && (document.forms[0].IPQ_A_USD.value != "N") && (document.forms[0].IPQ_CENDD.value != "") && (document.forms[0].IPQ_CAD1.value != "") && (document.forms[0].IPQ_CAD3.value != "") && (document.forms[0].IPQ_CAD4.value != "") && (document.forms[0].IPQ_CAPC.value != "") && (document.forms[0].IPQ_CTEL.value != "")) 
&& 
((document.forms[0].IPQ_AWDB.value != "") && (document.forms[0].IPQ_FEES.value != "") && (document.forms[0].IPQ_FEES.value != "Private Funds Self or Family") && (document.forms[0].IPQ_AWDS.value != "")) 
&& 
((document.forms[0].IPQ_RESEARCH.value = "Y") && (document.forms[0].IPQ_RESSRT.value != "") && (document.forms[0].IPQ_RESMOA.value != "") && (document.forms[0].IPQ_RESAR.value != "") && (document.forms[0].IPQ_RESDIS.value != "")) 
{ 
document.getElementById('submitbutton').className = 'processbuttons'; 
} 
else { 
document.getElementById('submitbutton').className = 'enabled'; 
} 
} 

Я пробовал различные комбинации, чтобы попытаться получить эту работу, но не может вложить правильно исправить правильную комбинацию скобок.

Опять же, если кто-то может указать мне в правильном направлении, я был бы очень благодарен!

+0

Я бы сказал, почему не JQuery ... но, я думаю, что Том дал ожерелье – MakuraYami

ответ

0

вы забыли скобки;

в смену

if (document.forms[0].QUESTIONID.value != "") && (document.forms[0].QUESTIONIDTWO.value != "") { 
.... 
} 

используют это:

if ((document.forms[0].QUESTIONID.value != "") && (document.forms[0].QUESTIONIDTWO.value != "")) { 
.... 
} 
0

Использование

document.getElementById('submitbutton').className = 'enabled'; 

для изменения класса CSS элемента

0
function ChangeButton() 
{ 
    if 
    ((document.forms[0].IPR.value == "") && (document.forms[0].FNM1.value == "") && (document.forms[0].FNM1.value == "") && (document.forms[0].SURN.value == "") && (document.forms[0].GEND.value == "") && (document.forms[0].DOB.value == "") && (document.forms[0].CRIM.value == "") && (document.forms[0].ETHC.value == "") && (document.forms[0].DSBC.value == "") && (document.forms[0].MARK1.value == "") && (document.forms[0].NATC.value == "") && (document.forms[0].COBC.value == "") && (document.forms[0].COD.value == "") && (document.forms[0].FIVE.value == "") && (document.forms[0].PERM.value == "") && (document.forms[0].VISF.value == "") && (document.forms[0].USD.value == "") && (document.forms[0].HAD1.value == "") && (document.forms[0].HAD3.value == "") && (document.forms[0].HTEL.value == "") && (document.forms[0].HAEM.value == "") && (document.forms[0].FEES.value == "") && (document.forms[0].REF1TIT.value == "") && (document.forms[0].REF1ORG.value == "")  && (document.forms[0].REF1POS.value == "") && (document.forms[0].REF1AL1.value == "") && (document.forms[0].REF1AL3.value == "") && (document.forms[0].REF1AL5.value == "") && (document.forms[0].REF1EMA.value == "") && (document.forms[0].DISC.value == "") 
     && 
     ((document.forms[0].PERM.value == "") && (document.forms[0].FIVE.value == "N")) 
     && 
     ((document.forms[0].AGNT.value == "") && (document.forms[0].USD.value == "Y")) 
     && 
     ((document.forms[0].CSTRT.value == "") && (document.forms[0].USD.value == "N") && (document.forms[0].CENDD.value == "") && (document.forms[0].CAD1.value == "") && (document.forms[0].CAD3.value == "") && (document.forms[0].CAD4.value == "") && (document.forms[0].CAPC.value == "") && (document.forms[0].CTEL.value == "")) 
     && 
     ((document.forms[0].AWDB.value == "") && (document.forms[0].FEES.value == "") && (document.forms[0].FEES.value == "Private Funds Self or Family") && (document.forms[0].AWDS.value == "")) 
     && 
     ((document.forms[0].RESEARCH.value == "Y") && (document.forms[0].RESSRT.value == "") && (document.forms[0].RESMOA.value == "") && (document.forms[0].RESAR.value == "") && (document.forms[0].RESDIS.value == ""))) 
     { 
     document.getElementById('submitbutton').className = 'enabled'; 
     } 
    else { 
     document.getElementById('submitbutton').className = 'disabled'; 
    } 
} 

Код со скобками скорректирован