2011-03-21 2 views
0

J'ai une erreur dans mon code javascript simple.Erreur: ma variable est null

HTML

<input type="text" name="txt" id="txt" value="Hello" /> 

JavaScript

<script type="text/javascript"> 
var txt = document.getElementById('txt').value; 
var txt2 = (null == document.getElementById('txt2').value)? "" : document.getElementById('txt2').value; 
alert(txt2); 
</script> 

Je sais que l'élément appelé txt2 n'existe pas, mais je veux que si un élément n'existe pas txt2 variable sera attribué une valeur par défaut

Répondre

2
var txt2 = document.getElementById('txt2') ? document.getElementById('txt2').value : ""; 
1

Vous où comparer null contre la valeur de txt2, qui n'existe pas. Cela pourrait fonctionner ...

<script type="text/javascript"> 
    var txt = document.getElementById('txt').value; 
    var txt2 = (null == document.getElementById('txt2')) ? "" : document.getElementById('txt2').value; 
    alert(txt2); 
</script> 
0

Au lieu de vérifier si la valeur est null, il suffit de cocher si l'élément est nul:

var txt2 = (document.getElementById('txt2') === null)? "" : document.getElementById('txt2').value; 
1

Il vous suffit de vérifier la truthiness de la valeur retourné par document.getElementById().

var txt = document.getElementById('txt').value, 
    txt2_element = document.getElementById('txt2'), 
    txt2 = txt2_element ? '' : txt2_element.value; 

alert(txt2); 
1

Vous pouvez essayer ceci:

var txt2Element = document.getElementById('txt2'); 
var txt2 = (txt2Element != null) ? txt2Element.value : '';