Dans la plupart des langages comme C #, par exemple, dans le cas d'une chaîne, vous pouvez tester (booléen) si cette chaîne contient une autre chaîne, un sous-ensemble de cette chaîne.
string x = test2;
if(x.contains("test"))
// do something
Comment puis-je faire cela simplement avec Javascript/Jquery?
Comme Paolo et Cletus l'ont dit, vous pouvez le faire en utilisant indexOf ().
Il convient de mentionner que c’est une fonction javascript, pas une fonction jQuery.
Si vous voulez qu'une fonction jQuery fasse cela, vous pouvez l'utiliser:
jQuery.fn.contains = function(txt) { return jQuery(this).indexOf(txt) >= 0; }
L'opérateur indexOf fonctionne pour des chaînes simples. Si vous avez besoin de quelque chose de plus compliqué, sachez que Javascript prend en charge les expressions régulières .
Un simple contient peut également être utile par exemple:
<div class="test">Handyman</div>
$(".test:contains('Handyman')").html("A Bussy man");
Un exemple de travail, utilisant seulement indexOf et jQuery
// Add span tag, if not set
$(document).ready(function(c) {
$('div#content ul.tabs li a').each(function(c){
// Add span wrapper if not there already
if( $(this).html().indexOf('span') == -1){
$(this).html('<span class="tab">' + $(this).html() + '</span>');
}
});
});
DT
Essayez d'implémenter ceci
function function1() {
var m = document.all.myDiv.contains(myB);
if (m == true){
m = "YES"
} else {
m = "NO"
}
alert(m)
}