Come posso controllare jQuery per vedere se il contenuto di una variabile contiene una parola specifica e far eseguire un avviso se abbinato?jQuery se trovato nella stringa
risposta
Se state cercando di controllare un javascript variabile e non qualche elemento della pagina, jQuery non sta andando davvero fare è più facile/diverso rispetto all'utilizzo di un semplice javascript.
Le altre risposte menzionate qui usando regex funzioneranno, ma potreste voler guardare lo String object reference o lo RegExp object reference su w3schools, se volete capirlo meglio.
Una parola: espressioni regolari.
Whoops, che erano 2 parole;)
https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Regular_Expressions
Regex:
/.(mystring\swhich\sshould\smatch)./
Va notato, per gli utenti che ne sono consapevoli, che questa soluzione è semplicemente javascript e questo problema non è necessario/usa jquery. –
if(str.indexOf("your word") !== -1)
o
if(str.search(/your regex/ig))
o
012.if(str.match(/your regex/ig).length > 0)
Come si vede, non è necessario jQuery per risolvere questo problema.
Ma, l'inferno, perché non utilizzare jQuery selectors se si vuole:
$('#someId:contains(text)')
+1 Va notato, per gli utenti che comprendono, che queste soluzioni sono semplici javascript e questo problema non è necessario/usa jquery. –
La soluzione indexOf dovrebbe essere la più efficiente. –
@ Jan: probabilmente lo farebbe, specialmente se si sta cercando una stringa nota. ma la regex è migliore in molti casi a causa della sua flessibilità – geowa4
Per un elemento, utilizzare le funzioni di stringa sul suo nome o qualsiasi altro valore di attributo applicabile:
if(jQuery("elementName").attr("attributeName").contains(...))
callSomeJSFunction();
, o espressioni regolari. Se è qualcosa di semplice, la manipolazione delle stringhe dovrebbe essere sufficiente come hanno detto altre persone. Un'altra grande risorsa sono i jQuery API pages o innumerevoli altri tutorial trovati attraverso una ricerca su Google. I gruppi di Google sono spesso un'altra risorsa utile.
grazie mille per la risposta, questa risposta mi ha aiutato un sacco. Ho guardato. Test – Ronal