PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mit jQuery einen dynamischen Klassennamen abrufen?


Gast
2013-12-19, 22:31:39
Hallo,

ich stehe grad vor einem Problem und komme nicht so recht weiter. Folgender Fall:

Bsp:

<button type="button" class="button item-red">Red Button</button>
<button type="button" class="button item-green borderless">Green Button</button>
<button type="button" class="button default item-white">White Button</button>


Ich möchte nun per jQuery mir die Klasse "item-"+Farbe von jedem dieser Buttons holen. Die Stelle an der die Klasse steht variert dabei immer. Ich bekomme es bislang nur hin, dass alles ab "item-"+Farbe zurückgegeben wird (z.B "item-green borderless") aber ich brauche eben nur "item-green". Hat da jemand einen Tipp oder ne Lösung für mich?

Sephiroth
2013-12-19, 22:42:11
Im class-Attribut suchen ..

var $class = $(item).attr("class");
var $regex = /(item-\w+)/ig;
var $matches = $regex.exec($class);
console.log($matches[1]);

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/exec

RattuS
2013-12-20, 02:10:45
Falls du nach dem passenden Selector suchst, wäre das
jQuery('button[class^="item-"],button[class*=" item-"]')

[class^="item-"]
class-Attribut beginnt mit "item-".

[class*=" item-"]
class-Attribut enthält "item-".

Gast
2013-12-20, 09:17:26
Im class-Attribut suchen ..

var $class = $(item).attr("class");
var $regex = /(item-\w+)/ig;
var $matches = $regex.exec($class);
console.log($matches[1]);

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/exec

Vielen Dank! Ich habe die Regex etwas angepasst, aber genau so funktioniert es nun.

@RattuS
Den Selector hatte ich schon. Trotzdem Danke :)