Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > Javascript and DropDownLists question

Reply
Thread Tools

Javascript and DropDownLists question

 
 
=?Utf-8?B?QWxCcnVBbg==?=
Guest
Posts: n/a
 
      08-01-2007
I have three dropdownlists in an AJAX UpdatePanel and I need to return the
selected index for two of them; the problem is that I'm only able to return
the selected index for the first dropdownlist of the three and it is the one
that I don't need. The dropdownlists are named, in order, ddlEntityType,
ddlEntityGroups and ddlProcesses. The Javascript for attempting to read the
selected index is as follows:

var entityTypeIndex =
document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityType').selectedIndex; // this one works
var entityGroupIndex =
document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityGroups').selectedIndex; // this doesn't work
var processesIndex =
document.getElementById('ct100$ContentPlaceHolder1 $ddlProcesses').selectedIndex; // this doesn't work

Trying all three in the Immediate Window, the first one still works; the
message I get back for the other two is: Object required

Why won't it find the dropdownlists for the two that I need to return the
SelectedIndex from?
 
Reply With Quote
 
 
 
 
Laurent Bugnion, MVP
Guest
Posts: n/a
 
      08-01-2007
Hi,

AlBruAn wrote:
> I have three dropdownlists in an AJAX UpdatePanel and I need to return the
> selected index for two of them; the problem is that I'm only able to return
> the selected index for the first dropdownlist of the three and it is the one
> that I don't need. The dropdownlists are named, in order, ddlEntityType,
> ddlEntityGroups and ddlProcesses. The Javascript for attempting to read the
> selected index is as follows:
>
> var entityTypeIndex =
> document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityType').selectedIndex; // this one works
> var entityGroupIndex =
> document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityGroups').selectedIndex; // this doesn't work
> var processesIndex =
> document.getElementById('ct100$ContentPlaceHolder1 $ddlProcesses').selectedIndex; // this doesn't work
>
> Trying all three in the Immediate Window, the first one still works; the
> message I get back for the other two is: Object required
>
> Why won't it find the dropdownlists for the two that I need to return the
> SelectedIndex from?


The unique name for the client, aka ClientId is generated by the server.
You must make sure that 'ct100$ContentPlaceHolder1$ddlEntityGroups' and
the other are really named this way. To make this sure, view the HTML
source on the web client. In your server-side code, use the control's
ClientId to generate the JavaScript code to get it.

HTH,
Laurent
--
Laurent Bugnion [MVP ASP.NET]
Software engineering, Blog: http://www.galasoft.ch
PhotoAlbum: http://www.galasoft.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
 
Reply With Quote
 
 
 
 
Mark Rae [MVP]
Guest
Posts: n/a
 
      08-01-2007
"Laurent Bugnion, MVP" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...

>> var entityTypeIndex =
>> document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityType').selectedIndex;
>> // this one works
>> var entityGroupIndex =
>> document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityGroups').selectedIndex;
>> // this doesn't work
>> var processesIndex =
>> document.getElementById('ct100$ContentPlaceHolder1 $ddlProcesses').selectedIndex;
>> // this doesn't work


var entityTypeIndex =
document.getElementById('<%=ddlEntityType.ClientID %>').selectedIndex;
var entityGroupIndex =
document.getElementById('<%=ddlEntityGroups.Client ID%>').selectedIndex;
var processesIndex =
document.getElementById('<%=ddlProcesses.ClientID% >').selectedIndex;


--
Mark Rae
ASP.NET MVP
http://www.markrae.net

 
Reply With Quote
 
=?Utf-8?B?QWxCcnVBbg==?=
Guest
Posts: n/a
 
      08-01-2007
Thanks for the tip. I'd inadvertently typed the number "1" rather than the
letter "l"; I thought I'd copied and pasted it, but apparently not.

"Laurent Bugnion, MVP" wrote:

> Hi,
>
> AlBruAn wrote:
> > I have three dropdownlists in an AJAX UpdatePanel and I need to return the
> > selected index for two of them; the problem is that I'm only able to return
> > the selected index for the first dropdownlist of the three and it is the one
> > that I don't need. The dropdownlists are named, in order, ddlEntityType,
> > ddlEntityGroups and ddlProcesses. The Javascript for attempting to read the
> > selected index is as follows:
> >
> > var entityTypeIndex =
> > document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityType').selectedIndex; // this one works
> > var entityGroupIndex =
> > document.getElementById('ct100$ContentPlaceHolder1 $ddlEntityGroups').selectedIndex; // this doesn't work
> > var processesIndex =
> > document.getElementById('ct100$ContentPlaceHolder1 $ddlProcesses').selectedIndex; // this doesn't work
> >
> > Trying all three in the Immediate Window, the first one still works; the
> > message I get back for the other two is: Object required
> >
> > Why won't it find the dropdownlists for the two that I need to return the
> > SelectedIndex from?

>
> The unique name for the client, aka ClientId is generated by the server.
> You must make sure that 'ct100$ContentPlaceHolder1$ddlEntityGroups' and
> the other are really named this way. To make this sure, view the HTML
> source on the web client. In your server-side code, use the control's
> ClientId to generate the JavaScript code to get it.
>
> HTH,
> Laurent
> --
> Laurent Bugnion [MVP ASP.NET]
> Software engineering, Blog: http://www.galasoft.ch
> PhotoAlbum: http://www.galasoft.ch/pictures
> Support children in Calcutta: http://www.calcutta-espoir.ch
>

 
Reply With Quote
 
Laurent Bugnion, MVP
Guest
Posts: n/a
 
      08-01-2007
Hi,

AlBruAn wrote:
> Thanks for the tip. I'd inadvertently typed the number "1" rather than the
> letter "l"; I thought I'd copied and pasted it, but apparently not.


That's why you shouldn't. You should use ClientID instead. This way, if
the containing control's name changes, you don't need to change your code.

HTH,
Laurent
--
Laurent Bugnion [MVP ASP.NET]
Software engineering, Blog: http://www.galasoft.ch
PhotoAlbum: http://www.galasoft.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Cascading DropDownLists Question (non-Ajax) Don Miller ASP .Net 0 01-23-2007 05:49 PM
Panels, DropDownLists,RadioButtons and Bears =?Utf-8?B?cm9kY2hhcg==?= ASP .Net 0 08-21-2006 07:55 PM
Problem with FormView and DropDownLists =?Utf-8?B?QmFzIFBhYXA=?= ASP .Net 3 04-11-2006 01:46 PM
Styles (or skins) and DropDownLists Neil ASP .Net 2 02-13-2006 05:28 PM
DropDownLists and NULL values Neil ASP .Net 5 01-31-2006 07:17 AM



Advertisments