Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何将数据列表中控件的值传递给JavaScript?_Asp.net_Javascript_Vb.net_Datalist - Fatal编程技术网

Asp.net 如何将数据列表中控件的值传递给JavaScript?

Asp.net 如何将数据列表中控件的值传递给JavaScript?,asp.net,javascript,vb.net,datalist,Asp.net,Javascript,Vb.net,Datalist,我有这样一个数据列表: <asp:DataList ID="dl" runat="server" Width="301px" onitemcommand="dl_ItemCommand"> <ItemTemplate> <table style="border:solid 1 #CCCCCC" > <tr align="left"> <td align="left

我有这样一个数据列表:

 <asp:DataList ID="dl" runat="server" Width="301px" onitemcommand="dl_ItemCommand">
     <ItemTemplate>
      <table style="border:solid 1 #CCCCCC" >
             <tr align="left">
               <td align="left">
              <img id="imgPhoto" runat="server"
               alt="Company Logo"
               border="0" 
               align="middle"
               style="border:solid 5px #CCCCCC;height:10px"src='<%#GetImage(Eval("ImageName")) %>'
                                                            />
   <asp:HiddenField id="hdnImg" runat="server" Value='<%#Eval("ImageName") %>'/>
        </td>
         </tr>
     <tr align="center">
       <td align="center">


 <asp:LinkButton ID="lnkChangeLogo" runat="server"                                                                    Text="ChangeLogo" OnClientClick="javascript:showLayerUpLoad();return  false;">       </asp:LinkButton>
    <br />
    <asp:LinkButton ID="lnkRemoveLogo" runat="server"                                                               Text="RemoveLogo"  OnClientClick="javascript:ConfirmChoice();return false;"/>
                                        </td>
                                </tr>
                            </table>                   
                    </ItemTemplate>

                </asp:DataList>

'
/>


我想将imagePhoto的src传递给函数showLayerUpLoad()。我该怎么做。我可以在ItemCreated事件中这样做吗?有人能帮忙吗?showLayerUpLoad()是javascript中显示弹出窗口的fn。

有一件事可以做,那就是稍微修改javascript函数。就拿一个论点来说吧

function showLayerUpLoad(ctrlid)
{
myctrl = document.getElementById(ctrlid); //now you have a reference to your control

alert(myctrl.value); //assuming its a hidden field  control with some value in it.
}
在代码隐藏中,处理datalist的项数据绑定事件:

 Sub Item_Bound(sender As Object, e As DataListItemEventArgs) Handles DataList1.ItemDataBound

     If e.Item.ItemType = ListItemType.Item Or _
         e.Item.ItemType = ListItemType.AlternatingItem Then


        'Retrieve the hidden control in the current DataListItem.
        Dim hf As HiddenField = _
            CType(e.Item.FindControl("YourHiddenFieldID"), HiddenField)

   'Retrieve the link button in the current DataListItem.
        Dim lb As Hidden Field = _
            CType(e.Item.FindControl("YourLinkButtonID"), LinkButton)

        lb.OnClientClick = string.Format("javascript:ShowLayerUpLoad('{0}')", hf.ClientID)


     End If

  End Sub
希望这有帮助