Solved

jQuery sort losing if radio is checked or not.

Posted on 2009-07-15
7
559 Views
Last Modified: 2013-11-19
Wilq32 helped me with this in the past.

http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Jquery/Q_24422937.html

He help me to get my inputs to retain their value when they add another item to the sort list. Now I need to do the same thing for a radio, retain if it is checked or not.

wilq32 said: "

Before $select.empty()  do:


$("#asmList0 li").each(function()
{
var value=($("input",this).attr("value"));

$("#"+this.getAttribute('rel')).attr("last",value);
});

then in addListItem do that:

change this:

 var $itemInput = $('<input type="text"/>').addClass(options.inputItemLabelClass);

to

var $itemInput = $('<input type="text"/>').addClass(options.inputItemLabelClass);
$itemInput.attr("value",$O.attr("last"));
"

As I said that works for my input item. I changed it to not select an input and instead set an id that it targets. So now I tried to get it to work for keeping the radio checked.

My code below does not work for the radio but still works for the value for the text input:
var value=($('#pageNameInput',this).attr('value'));
var radioChecked=($('.homeRadio').attr('checked'));//is the radio checked or not?
 
$("#"+this.getAttribute('rel')).attr("last",value);
$("#"+this.getAttribute('rel')).attr("radio",radioChecked);
 
and
 
var $homeRadio = $('<input type="radio"/>').addClass(options.homeRadio);
	$homeRadio.attr("id", "home_Radio");
	$homeRadio.attr("name", "home-radio");
	$homeRadio.attr("checked",$O.attr("radio"));

Open in new window

0
Comment
Question by:Shaye Larsen
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
7 Comments
 
LVL 1

Author Comment

by:Shaye Larsen
ID: 24864884
This kinda works. It checks the last added one instead of if the element was checked before
var value=($('#pageNameInput',this).attr('value'));
var radioChecked=($('.homeRadio', this).attr('checked'));//is the radio checked or not?
 
$("#"+this.getAttribute('rel')).attr("last",value);
$("#"+this.getAttribute('rel')).attr("checkRadio",radioChecked);
 
and
 
var $homeRadio = $('<input type="radio"/>').addClass(options.homeRadio);
	$homeRadio.attr("id", "home_Radio");
	$homeRadio.attr("name", "home-radio");
	$homeRadio.attr("checked",$O.attr("checkRadio"));

Open in new window

0
 
LVL 1

Author Comment

by:Shaye Larsen
ID: 24865157
Here is my test page:

http://dalelarsen.com/dale/sort.php
0
 
LVL 18

Expert Comment

by:Pawel Witkowski
ID: 24893002
Your change is basically ok, one thing to change:

   $homeRadio.attr("checked",$O.attr("checkRadio"));


replace this to:

if ($O.attr("checkRadio"))  $homeRadio.attr("checked",true);




Its because  there is nothing like checked=false, its checked or nothing ;)
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Author Comment

by:Shaye Larsen
ID: 24895871
Thanks for helping with this wilq32.

It still does not work though. Seems about the same.

I tried a few new things out but they didn't work.

I updated my example page,

http://dalelarsen.com/dale/sort.php
0
 
LVL 18

Accepted Solution

by:
Pawel Witkowski earned 500 total points
ID: 24896420
I dont see mine changes on test case :(

Anyway I saw in debugger that function  .attr("checkRadio") returns string instead of value.... Try this. Maybe it helps




if ($O.attr("checkRadio")==="true")  $homeRadio.attr("checked",true);
0
 
LVL 1

Author Closing Comment

by:Shaye Larsen
ID: 31604029
Perfect thanks! I will be doing several other functions like this, like making it remember which <option> is selected for each select in the sort menu and such. If I need help I'll post more.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Collapse in/out from a "a href" each row containing different id 5 68
javascript delete path 7 44
allow link tag to be submit like form 15 60
asp.net mvc5 6 33
Introduction If you're like most people, you have occasionally made a typographical error when you're entering information into an online form.  And to your consternation, the browser remembers the error, and offers to autocomplete your future entr…
Today, the web development industry is booming, and many people consider it to be their vocation. The question you may be asking yourself is – how do I become a web developer?
The viewer will receive an overview of the basics of CSS showing inline styles. In the head tags set up your style tags: (CODE) Reference the nav tag and set your properties.: (CODE) Set the reference for the UL element and styles for it to ensu…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.

734 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