[Webinar] Streamline your web hosting managementRegister Today

x
?
Solved

jQuery select class contain part of name

Posted on 2010-08-29
6
Medium Priority
?
856 Views
Last Modified: 2012-05-10
in my html i have the following
<li class="Bleu1" id="2">
<li class="Bleu1Selected" id="3">
<li class="yallow1Selected" id="4">
<li class="yallow1" id="5">

i want jQuay that will select all (li) with class name contain (Selected)
and then reset the class to be without (Selected)
Like this

<li class="Bleu1" id="2">
<li class="Bleu1" id="3">
<li class="yallow1" id="4">
<li class="yallow1" id="5">
0
Comment
Question by:palserv
  • 3
  • 2
6 Comments
 
LVL 7

Expert Comment

by:mcuk_storm
ID: 33554094
Do you have control of the markup? If so i would suggest using multiple classes instead of a compound one i.e.
<li class="Bleu1 Selected">

You can then identify this through css/jQuery like

li.Bleu1.Selected

then if you want to remove selected you can do $('li.Bleu1.Selected').removeClass('Selected');

This makes selecting all Selected ones alot easier and likewise all Bleu1 ones easier
0
 
LVL 7

Expert Comment

by:mcuk_storm
ID: 33554102
With the above comment, an example to reset all selected would simply be $('.Selected').removeClass('Selected');
0
 
LVL 83

Accepted Solution

by:
leakim971 earned 1000 total points
ID: 33554223
You may use : http://api.jquery.com/attribute-contains-selector/


$("li[class*='Selected']").each(function() {
				prevClass = $(this).attr("className");
				nextClass = prevClass.replace("Selected","");
				$(this).removeClass(prevClass).addClass(nextClass);
			});

Open in new window

0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
LVL 83

Expert Comment

by:leakim971
ID: 33554225
Test page :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script language="javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script language="javascript">
	$(document).ready(function() {
		$("#but").click(function() {
			$("li[class*='Selected']").each(function() {
				prevClass = $(this).attr("className");
				nextClass = prevClass.replace("Selected","");
				$(this).removeClass(prevClass).addClass(nextClass);
			});
		});
	});
</script>
</head>
<body>
<input type="button" id="but" value="click me" />
<ul>
    <li class="Bleu1" id="2">Hello</li>
    <li class="Bleu1Selected" id="3">Hello</li>
    <li class="yallow1Selected" id="4">Hello</li>
    <li class="yallow1" id="5">Hello</li>
</ul>
</body>
</html>

Open in new window

0
 
LVL 6

Assisted Solution

by:hehdaddy
hehdaddy earned 1000 total points
ID: 33555826
Simple:

$("li[class*='Selected']").each(function()
{
    var class = $(this).attr("class");
    class.replace("Selected", "");
    $(this).attr("class", class);
});

Give this a go!
0
 
LVL 83

Expert Comment

by:leakim971
ID: 33602698
Thanks for the points!
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article discusses how to create an extensible mechanism for linked drop downs.
The first step to building an amazing About page is to figure out what you want the page to say about your company. You then must grab the attention of the reader, boast a bit, tell a story and let others brag about you. With a little bit of thought…
In this tutorial viewers will learn how add a scalable full-width header using CSS3. Create a new HTML document with an internal stylesheet. Set a tiled background.:  Create a new div and name it Header. Position it with position:absolute at the top…
In this tutorial viewers will learn how to code links for mobile sites that, once clicked, send a call or text to a specified number. For a telephone link (once clicked, calls a number), begin with a normal "<a href=" link tag. For the href, specify…
Suggested Courses

590 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question