Avatar of lulu50
lulu50Flag for United States of America asked on

Gary!!!! check if the data exist in the dropdown list

Hi,

I need to check if the group number already exist in the parent window drop-down list
before append the data

my code in the child page:

function AddToTheList()
{
		var SelectedSeg=new Array();
		var SelectedGroup=new Array();	
		var dropdownGroup = $("#DispSelectedGroupBox");
		var options="";
		$('#DispGroupList option:selected').each(function() {
    			vals = $(this).val()
    			vals=vals.split(",")

		   options+='<option value="'+vals[0]+','+vals[1]+ '" data-GroupNumber="'+vals[1]+'">'+vals[2]+'</option>';

   		})
		
		   window.opener.$("#DispSelectedGroupBox").append(options);
}

Open in new window



what I need is to check if #DispSelectedGroupBox has the GroupNumber already
before appending the data to it.  

so something like this:  

function AddToTheList()
{
		var SelectedSeg=new Array();
		var SelectedGroup=new Array();	
		var dropdownGroup = $("#DispSelectedGroupBox");
		var options="";
		$('#DispGroupList option:selected').each(function() {
    			vals = $(this).val()
    			vals=vals.split(",")

		$.each(dropdownGroup, function(index, value) {
				if ($('#DispSelectedGroupBox option[data-GroupNumber=' +vals[1] + ']').length > 0)
		{
					alert("Already filtering on " + vals[1]);
			}
			else {
		  options+='<option value="'+vals[0]+','+vals[1]+ '" data-GroupNumber="'+vals[1]+'">'+vals[2]+'</option>';
			}
				});
   		})
		   window.opener.$("#DispSelectedGroupBox").append(options);
}

Open in new window

jQueryJavaScriptJScript

Avatar of undefined
Last Comment
lulu50

8/22/2022 - Mon
Gary

Would it not make sense to just replace whatever is there or are there values coming from somewhere else?
ASKER
lulu50

no, it shouldn't replace whatever is there.
duplicate
ASKER
lulu50

so something like this maybe.

function AddToTheList()
{
		var SelectedSeg=new Array();
		var SelectedGroup=new Array();	
		var dropdownGroup = $("#DispSelectedGroupBox");
		var selectedGroups = $("#DispSelectedGroupBox option:selected");
		var options="";
		$('#DispGroupList option:selected').each(function() {
    			vals = $(this).val()
    			vals=vals.split(",")

	$.each(selectedGroups, function(index, value) {
		
		if ($('#DispSelectedGroupBox option[data-GroupNumber=' +vals[1] + ']').length > 0)
		{
			alert("Already filtering on " + vals[1]);
			}
			else {
		  options+='<option value="'+vals[0]+','+vals[1]+ '" data-GroupNumber="'+vals[1]+'">'+vals[2]+'</option>';
			}
	});

   		})
		
		   window.opener.$("#DispSelectedGroupBox").append(options);
}

Open in new window

This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.
rwheeler23
ASKER CERTIFIED SOLUTION
Gary

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
See how we're fighting big data
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question
ASKER
lulu50

getting error on this line

      if(window.opener.$("#DispSelectedGroupBox option[value='"+vals[0]+','+vals[1]+"']").length == 0{


ERROR: Object expected

function AddToTheList()
{
		var SelectedSeg=new Array();
		var SelectedGroup=new Array();	
		var dropdownGroup = $("#DispSelectedGroupBox");
		var options="";
		$('#DispGroupList option:selected').each(function() {
    			vals = $(this).val()
    			vals=vals.split(",")

		if(window.opener.$("#DispSelectedGroupBox option[value='"+vals[0]+','+vals[1]+"']").length == 0{
		{
				options+='<option value="'+vals[0]+','+vals[1]+ '" data-GroupNumber="'+vals[1]+'">'+vals[2]+'</option>';
			}

   		})
		
		   window.opener.$("#DispSelectedGroupBox").append(options);
} 

Open in new window

Gary

Missing the closing bracket

		if(window.opener.$("#DispSelectedGroupBox option[value='"+vals[0]+','+vals[1]+"']").length == 0){

Open in new window

ASKER
lulu50

Gary!!!!!

What can I say.  It is working!!!!!! very very nice.  

Thank you Gary for all your help this is exactly what I need.  

Can't thank you enough. lol lol

I am very very happy with the result..

So, thank you again and again.  

lulu
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.
ASKER
lulu50

I've requested that this question be closed as follows:

Accepted answer: 0 points for lulu50's comment #a39913050

for the following reason:

Excellent ++++ for one million and one lol lol
ASKER
lulu50

I selected the wrong one maybe

this is the correct answer
ASKER
lulu50

oh, I did select the wrong one.

please, admin fix it for me.
I started with Experts Exchange in 2004 and it's been a mainstay of my professional computing life since. It helped me launch a career as a programmer / Oracle data analyst
William Peck
Gary

You selected the answer, its fine now.
ASKER
lulu50

oh good thank you Gary