Passing values from Gridview to ModalPopUp Extender

In my project I have a Gridview with 10 Artist rows in it.
When the user clicks on one of the row a modalpopupextender is opened.
when the user clicks on the modal popup extender it will take the user to next window
based on ArtistId.
My question here is how to pass the ArtistId to Modalpopupextender when the user
clicks on the Artist row in the Gridview.
Any help will be highly appreciated.

<ItemTemplate>
	   <asp:HyperLink ID="lnkArtist" runat="server" NavigateUrl='www.yahoo.com' Text='ArtistName' />                
              <asp:LinkButton ID="lnkPopup" runat="server" Width="47px" style="display:none" />
     
                <cc1:ModalPopupExtender ID="ModalPopup1" runat="server" TargetControlID="lnkArtist"
                    PopupControlID="pnlpopup" BackgroundCssClass="modalBackground" 
                    OkControlID="btnSelect1" CancelControlID="CancelBtn" /><br />
        
		<div style="width:350px; margin:auto; margin-bottom:10px;">
                     <div style="margin-top:20px;"><strong>Do You Want To View This Artist:</strong></div>                    
                    </div>
                    
         	<div style="width:300px; margin:auto;">                                    
                   <div style="margin-top:20px; clear:both;"><asp:ImageButton ID="btnSelect2" OnClick="btnSelect2_Click" ImageUrl="~/Images/select.gif" runat="server"/> 				<strong>ClickMe</strong></div>
                   </div>
	    </asp:Panel>
	 </ItemTemplate>

Open in new window

ken_rgrAsked:
Who is Participating?
 
nmarunCommented:
0
 
ken_rgrAuthor Commented:
I tried it. but its not working for me.
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
nmarunCommented:
0
 
ken_rgrAuthor Commented:
I am trying in the same way
here is my script.

 function lnkArtistClick(key)
    {
        var Grid1 = document.getElementsByTagName('GridView');    //getElementById('Gridtable');
        var field1 = Grid1.getElementsByTagName('INPUT');
        for (var i = 0; i < field1.length; i++) {
            if (field1[i].type == "HiddenField") {
                alert(field1[i].value);
               
            }
        }        
    }

In the above code  document.getElementsByTagName('GridView');    is returning count 0.
I tried document.getElementById('Gridtable'); also returns null.
I dont know where I am doing mistake.
0
 
nmarunCommented:
You need to something like this:

var Grid1 = document.getElementById( '<%=gridView1.ClientID %>');
0
 
ken_rgrAuthor Commented:
Hi

Thanks man. its working good now.
But I am not getting the Hidden field value now.
Basically the hidden field is in the <itemtemplate> of the gridview.
Any suggestions.
thanks
0
 
nmarunCommented:
How about?
var hiddenField = document.getElementById( '<%=myHiddenField.ClientID %>');
0
 
ken_rgrAuthor Commented:
Nope , I am not getting the error "myHiddenField does not exists in the current context."
Remember Hidden field is in the Gridview. We can not access is directly.
We have to access it from Gridview only.
Please check earlier code.
Thanks
0
 
nmarunCommented:
Replace 'myHiddenField' with the name you have specified in your code.
0
 
ken_rgrAuthor Commented:
Thats what I did.
0
 
ken_rgrAuthor Commented:
Appreciated your help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.