2010-05-21 4 views
0

Quelqu'un peut-il expliquer ce que cette fonction faitExpliquer la fonction setState

var page = new Object(); 
page.testSearch.btnSearch.setState = function() { 
    this.disable(!(page.testSearch.searchString.value.trim().length > 1)); 
} 
+0

Utilisez-vous une bibliothèque JavaScript comme Prototype.js ou jQuery? Il pourrait être impossible de dire ce que votre code fait sans regarder plus de code avec du HTML. –

+0

Dupliquer: http://stackoverflow.com/questions/2883894/whats-this-javascript-function-doing –

+1

Si ce code est verbatim il semble extrêmement improbable (\ *) de fonctionner. Vous ne pouvez pas assigner quelque chose à 'page.testSearch.someProperty' si vous n'avez pas mis une propriété' testSearch' sur 'page'. (\ *: c'est possible s'il y avait du prototypage sur Object, mais cela serait improbable et fortement déconseillé.) – bobince

Répondre

0

Le code crée un nouvel objet vide JavaScript appelé page. Ensuite, il ajoute une propriété à l'objet (qui dans ce cas s'avère être une fonction). On dirait qu'il repose sur une autre fonction que vous n'avez pas collée, appelée disable (mais je pense que nous pouvons supposer qu'elle désactive quelque chose!) Qui va désactiver quelque chose si le texte en page.testSearch.searchString est plus court que 1 caractère .

Il me semble que cela fonctionne sur un formulaire sur une page Web.

Il faut dire que ce style de codage JavaScript est un peu obsolète, et certains pourraient soutenir que ce morceau de code serait mieux écrit en utilisant la notation littérale .

+0

comment le réécrire avec un objet littéral..Merci – Autolycus

Questions connexes