2013-12-05 3 views
0

У меня есть 2 набора текстовых полей (1,2,3,4) и (a, b, c, d, e, f). Все это числовые входыВключить текстовое поле на основе ввода

Я использую javascript для отключения 6 текстовых полей (a, b, c, d, e, f) при загрузке и работает хорошо.

Но я хочу, чтобы позволить 6 раз в текстовых полях значения> 0 вводится в текстовое поле (3)

Я пытаюсь использовать OnChange, но он не работает.

<html> 
<script type="text/javascript"> 
window.onload = function() { 
var td2 = document.getElementsByName('A1ab1')[0]; 
td2.disabled = true; 
var td2 = document.getElementsByName('A1ab2')[0]; 
td2.disabled = true; 
var td3 = document.getElementsByName('A1ab3')[0]; 
td3.disabled = true; 
var td4 = document.getElementsByName('A1ab4')[0]; 
td4.disabled = true; 
var td5 = document.getElementsByName('A1ab5')[0]; 
td5.disabled = true; 
var td6 = document.getElementsByName('A1ab6')[0]; 
td6.disabled = true; 
var td7 = document.getElementsByName('A1a3')[0]; 
td7.onChange = function(){ 
var x = document.getElementsByName('A1a3')[0].value; 
    if(x > 0){ 
       td1.disabled = false; 
       td2.disabled = false; 
       td3.disabled = false; 
       td4.disabled = false; 
       td5.disabled = false; 
       td6.disabled = false;      
    }  
} 
} 
</script> 
<body> 
<table border="0" class="NumericTable" cellspacing="0" cellpadding="0"> 
<tr class="r1"><td class="item"><span class="OptionFont">1</span></td><td class="text"><input type=text class=text name="A1a1" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1a(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r2"><td class="item"><span class="OptionFont">2</span></td><td class="text"><input type=text class=text name="A1a2" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1a(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r1"><td class="item"><span class="OptionFont">3</span></td><td class="text"><input type=text class=text name="A1a3" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1a(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r2"><td class="item"><span class="OptionFont">4</span></td><td class="text"><input type=text class=text name="A1a4" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1a(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
</table> 
<br> 
<table border="0" class="NumericTable" cellspacing="0" cellpadding="0"> 
<tr class="r1"><td class="item"><span class="OptionFont">a</span></td><td class="text"><input type=text class=text name="A1ab1" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r2"><td class="item"><span class="OptionFont">b</span></td><td class="text"><input type=text class=text name="A1ab2" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r1"><td class="item"><span class="OptionFont">c</span></td><td class="text"><input type=text class=text name="A1ab3" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r2"><td class="item"><span class="OptionFont">d</span></td><td class="text"><input type=text class=text name="A1ab4" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r1"><td class="item"><span class="OptionFont">e</span></td><td class="text"><input type=text class=text name="A1ab5" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
<tr class="r2"><td class="item"><span class="OptionFont">f</span></td><td class="text"><input type=text class=text name="A1ab6" value="" size=9 maxlength=9 style="text-align:right" onkeyup="{showTotalA1ab(); }" onkeypress="return checkNumericValue(event)" onBlur="Javascript:onBlurUpdate(this);" /></td></tr> 
</table> 
</body> 
</html> 

Спасибо!

ответ

0

Посмотрите на это:

jQuery('#some_text_box').on('input', function() { 
    // do your stuff 
}); 

jsFiddle Demo

Это должно работать.

0

Вы не указали переменную "td1." Очень рекомендую использовать javascript-консоль браузера для отладки таких вещей. Он должен вызывать ошибку при выполнении onChange.

0

Если вы не хотите использовать JQuery, попробуйте использовать .onkeydown вместо .onchange.

Кроме того, вам, вероятно, нужно проанализировать значение INT из текстового поля:

var x = parseInt(document.getElementsByName('A1a3')[0].value); 
+0

Я использую .onkeydown и это работает! Благодаря! :) – user3068377

Смежные вопросы