Solved

jquery using csv to produce list with unique href per item

Posted on 2012-12-23
6
338 Views
Last Modified: 2012-12-28
Hi,
I'm trying to adapt a code snippet I had gotten from here.

What I need to achieve is to produce a ul list with data in each li item and a unique href for each item using csv data on the site.

Here's what I have
<section class="tag"><strong>TAGGED IN: </strong><ul><span>item1,nextItems2,anotherItems3</span></ul>


Here's what need to be produced
<section class="tag">
<strong>TAGGED IN: </strong>
<ul>
<li><a href="SameDomainURL/search-results.html?item1">item1</a></li>
<li><a href="SameDomainURL/search-results.html?nextItems2">nextItems2</a></li>
<li><a href="SameDomainURL/search-results.html?anotherItems3">anotherItems3</a></li>
</ul>

Here's the code I've tried to append but doesn't quite work:
$('.tag span').each(function(){
	var currentList = $(this);
	var itemsArray = currentList.text().split(",");
	//Loop through the array and add a li a href element
	$.each(itemsArray , function(index, value) { 
		var newLI = $("<li>").html($("<a>").html(value).attr('href', '/site-search-results.html?category=').html(value));
		currentList.append(newLI);
	});
});

Open in new window


What it isn't doing but I need it to is:
1. strip the original csv data just leaving the formatted data.
2. Add the item value as unique value per item to the url href after the ?

Help appreciated...Christmas is nearly here! and I need to finish!
Regards
Lee
0
Comment
Question by:boxhedge
  • 5
6 Comments
 
LVL 52

Expert Comment

by:Scott Fell, EE MVE
ID: 38716633
Have a look at this project http://code.google.com/p/jquery-csv/
0
 

Author Comment

by:boxhedge
ID: 38716707
Thanks but not what I'm after.
Just need this one use and the specific requirements of what I have explained.
If padas or anyone else can be of more help it would be appreciated,
Regards
Lee
0
 

Accepted Solution

by:
boxhedge earned 0 total points
ID: 38716889
Sorted it. Slightly different approach

	var propCatList = $('.tag ul').text();
	itemsArray = propCatList.split(",");
	$('.tag ul').html('');
	$('.tag ul').append('');
	$.each(itemsArray , function(index, value) { 
	$('.tag ul').append('<li><a href="/site-search-results.html?category='+ value +'"><span>' + value + '</span></a></li>');
	});

Open in new window

0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:boxhedge
ID: 38716891
I've requested that this question be closed as follows:

Accepted answer: 0 points for boxhedge's comment #a38716889

for the following reason:

Because it is and expert posted generic answer without really thinking it through. Once an expert posts a single comment it greatly reduces chance of someone elses involvement
0
 

Author Comment

by:boxhedge
ID: 38716892
Because I provided the solution and expert posted generic answer without really thinking it through. Once an expert posts a single comment it greatly reduces chance of someone elses involvement particularly in my short timescale.
0
 

Author Closing Comment

by:boxhedge
ID: 38726420
Because I provided the solution and expert posted generic answer without really thinking it through. Once an expert posts a single comment it greatly reduces chance of someone elses involvement particularly in my short timescale.
0

Featured Post

MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

Question has a verified solution.

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

SASS allows you to treat your CSS code in a more OOP way. Let's have a look on how you can structure your code in order for it to be easily maintained and reused.
Find out what you should include to make the best professional email signature for your organization.
In this tutorial viewers will learn how to embed videos in a webpage using HTML5. Ensure your DOCTYPE declaration is set to HTML5: "<!DOCTYPE html>": Use the <video> tag to insert a video. Define the src as the URL of your video; this is similar to …
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

825 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