0

c# で ASP.NET 4.0 を使用しています。

私のaspxページで、データリストのitemtemplete.likeにある隠しフィールド値を取得したい

<asp:DataList ID="dlKit" runat="server">
    <HeaderTemplate>
        <table cellpadding="5" cellspacing="5" width="100%">
    </HeaderTemplate>
    <ItemTemplate>
        <tr>
            <td style="width: 115px">
                <asp:HiddenField ID="DeviceId" runat="server" Value='<%#Eval("Id")%>' />
                <asp:HiddenField ID="DeviceType" runat="server" Value='<%# string.Format("{0}", Eval("DeviceType")) %>' />
                <asp:Label ID="lblDevicetype" runat="server" Text='<%#Eval("DeviceType_Name")%>'></asp:Label> <span style="float: right;">:</span>

            </td>
            <td style="padding-left: 0;">
                <asp:HiddenField ID="hfSelectedDeviceType" runat="server" Value="" />
                <asp:CheckBox ID="chkDevice" runat="server" Checked="true" onclick="javascript:SelectRBTN(this);" />
            </td>
        </tr>
    </ItemTemplate>
    <FooterTemplate>
        </table>
    </FooterTemplate>
</asp:DataList>

SelectRBTN(this)関数で(隠しフィールド)値を取得したいDeviceType

どうやって手に入れるの?同じための適切な解決策を教えてください。

4

5 に答える 5

0

これを試して、

var val= $("#"+ '<%= hfSelectedDeviceType.ClientID %>').val();
于 2013-10-28T07:15:28.943 に答える
0

それには2つの方法があります

解決策 1

  1. javascript:SelectRBTN(this,selectedDeviceType); にもう 1 つのパラメーターを追加します。
  2. サーバーで「hfSelectedDeviceType」の clientID を取得し、それを関数に渡します。
  3. Javascript で値を設定します (jquery または任意のライブラリを使用します)。

解決策 2

  1. 関数 SelectRBTN で、jquery を使用して親 td を検索します。
  2. 隠しフィールドを見つけて、値を設定します。
于 2013-10-28T06:32:15.953 に答える
0

デモjsFiddle

JS

function SelectRBTN(obj)
{
    alert($('#DeviceType').val());
}
于 2013-10-28T06:32:27.620 に答える
0

クライアントで DeviceType 値を取得するには、ClientIDMode="Static" を設定してから、次のようにして値を取得する必要があります。

$("#DeviceType").val();

設定するには:

$("#DeviceType").val("new value");
于 2013-10-28T06:33:02.977 に答える