2013-07-24 68 views
2

我有兩個輸入和一個div。我希望能夠顯示div兩個的輸入值都是6或7.Javascript:顯示.div如果兩個輸入的值爲x或y

我是JavaScript新手。

var div = $('div').hide(); 
$('.first, .second').keyup(function() { 
    var value = this.value; 
    if (value == 6 || value == 7) { 
     div.fadeIn(); 
    } else { 
     div.fadeOut(); 
    } 
}); 

JSFiddle

+0

所以有什麼問題?請參閱http://jsfiddle.net/arunpjohny/Qgf34/1/ –

+0

請通過此... http://jsfiddle.net/ashukasama/P69Vg/7/ – Kasma

回答

4
$('.first, .second').keyup(function() { 

    var value1 = $(".first").val(); 
    var value2 = $(".second").val(); 
    if ((value1 == 6 || value1 == 7) && (value2 == 6 || value2 == 7)) { 
     div.fadeIn(); 
    } else { 
     div.fadeOut(); 
    } 
}); 

試試上面的

+0

'if(Math.abs(value1 + value2- 13)+ Math.abs(value1-value2)== 1)'奇怪而優雅,但也可以工作:[FIDDLE](http://jsfiddle.net/vladkras/P69Vg/17/) – vladkras

0

所有輸入:(,我擔心,一切靠近它不是),這是接近我已經能來必須是6或7才能顯示div,即使有更多的輸入區域。

更多的遺傳,更多更好:

HTML:

<input type="text" class="entry"/> 
<input type="text" class="entry"/> 

的javascript:

var div = $('div').hide(); 
var $entry=$('.entry'); 

$entry.keyup(function() { 
    var $entryMatch=$entry.filter(function(){ 
      var value = $(this).val(); 
      if (['6','7'].indexOf(value)>-1) { 
       return true 
      } else { 
       return false; 
      } 

    }); 
    if ($entryMatch.size()==$entry.size()) div.show(); 
    else div.hide(); 




}); 

jsfiddle

+0

這是任何輸入觸發。 http://jsfiddle.net/P69Vg/18/ – caoglish

0

試試這個demo

個HTML

<div>hello</div> 

<input type="text" class="myinput" name='first'/> 
<input type="text" class="myinput" name='second'/> 

JS

var div = $('div'); 
div.hide(); 

$('.myinput').keyup(function() { 

    var value = 0; 

    $('.myinput').each(function(){ 
     if($(this).val() == 6 || $(this).val() == 7) 
     { 
      value = $(this).val(); 
     } 
    }); 
    if(value == 6 || value == 7) 
     div.fadeIn(); 
    else 
     div.fadeOut(); 
}); 

CSS

div { 
    border: 4px solid #333; 
    width:100px; 
    height:100px; 

} 
相關問題