javascript
  • jtemplates
  • 2013-02-08 4 views 1 likes 
    1

    Je rends du HTML dans lequel j'injecte la valeur d'une zone de texte avec javascript. Voir: {T.blob.title $}Comment imprimer "" si la valeur de la variable est nulle?

    <input type="text" maxlength="40" size="16" id='imgtitle_{$T.blob.Id}' value='{$T.blob.title}' class="imagetitleinput" /><br /> 
    

    Cependant, cette chaîne peut être nulle si la zone de texte indique la valeur "null" au visiteur. Comment puis-je vérifier (de préférence en ligne) si la valeur de {$T.blob.title} est null et si oui, définir la valeur de cette zone de texte à ""?

    J'utilise ce moteur de modèle: http://jtemplates.tpython.com/

    +5

    Quel moteur de gabarit utilisez-vous? À première vue, cela ne semble pas avoir de lien avec JavaScript. –

    +0

    Ajoutez une instruction if, mais ne soyez pas trop compliqué avec Javascript/jQuery en ligne. – David

    +0

    S'il ne s'agissait que de JavaScript, je dirais que 'T.blob.title ||' ''(en supposant que le titre ne soit pas un entier, puisque' 0' deviendrait '' '') –

    Répondre

    1

    Cela devrait fonctionner [Utilisation Jquery]

    $(document).ready(function() { 
        $(".imagetitleinput").each(function() { 
         if($.trim($(this).val()) == '') { 
          $(this).val('NULL'); 
         } 
        }); 
    }) 
    

    Bien que pas sûr si vous voulez utiliser Jquery ici ou non.

    4

    Vous devez effectuer cette logique avant votre variable T.blob.title $ est encore près entrer dans le DOM. Ne commencez pas à exécuter JS en ligne dans un élément - ce n'est pas une bonne pratique!

    Je suppose que vous construisez un objet littéral plus haut dans le flux? Si c'est le cas, vérifiez la valeur de $ .blob.title et si elle est nulle, définissez la valeur sur une chaîne vide.

    Questions connexes