如何使用javascript将gridview中的复选框值获取到texbox中?
我在gridview中有一个复选框,如下所示如何使用javascript将gridview中的复选框值获取到texbox中?,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我在gridview中有一个复选框,如下所示 <asp:GridView ID="GridView1" runat="server" BorderColor="Blue" BorderWidth="1px" CellPadding="4" Font-Size="Small" ForeColor="#333333" GridLines="None" Width="165px"> <Columns> <asp:TemplateField>
<asp:GridView ID="GridView1" runat="server" BorderColor="Blue" BorderWidth="1px" CellPadding="4" Font-Size="Small" ForeColor="#333333" GridLines="None" Width="165px">
<Columns>
<asp:TemplateField>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CB" runat="server" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
我想使用javascript将checked textbox的值放入gridview之外的另一个textbox。因为texbox放在EditItemTemplate中,所以您需要先将gridview切换到编辑模式。所以,就目前而言,您无法通过单击复选框在javascript上获取文本框值
$(function () {
$(".cb").click(function () {
var selectedText = $(this).next("input[type='hidden']").val();
$("#<%= SelectedValueTextBox.ClientID %>").val(selectedText);
});
});
Selected: <asp:TextBox runat="server" ID="SelectedValueTextBox" />
<br />
<asp:GridView ID="GridView1" runat="server" BorderColor="Blue" BorderWidth="1px"
CellPadding="4" Font-Size="Small" ForeColor="#333333" GridLines="None" Width="165px">
<Columns>
<asp:TemplateField>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CB" runat="server" CssClass="cb" />
<asp:HiddenField runat="server" Value="<%# Container.DataItem.ToString() %>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = Enumerable.Range(1, 10);
GridView1.DataBind();
}
}
您可以在复选框旁边添加隐藏字段,并将其值绑定到要在复选框单击时显示在外部文本框中的文本
$(function () {
$(".cb").click(function () {
var selectedText = $(this).next("input[type='hidden']").val();
$("#<%= SelectedValueTextBox.ClientID %>").val(selectedText);
});
});
Selected: <asp:TextBox runat="server" ID="SelectedValueTextBox" />
<br />
<asp:GridView ID="GridView1" runat="server" BorderColor="Blue" BorderWidth="1px"
CellPadding="4" Font-Size="Small" ForeColor="#333333" GridLines="None" Width="165px">
<Columns>
<asp:TemplateField>
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="CB" runat="server" CssClass="cb" />
<asp:HiddenField runat="server" Value="<%# Container.DataItem.ToString() %>" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = Enumerable.Range(1, 10);
GridView1.DataBind();
}
}
$(函数(){
$(“.cb”)。单击(函数(){
var selectedText=$(this.next(“输入[type='hidden']”)val();
$(“#”)val(selectedText);
});
});
所选内容:
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!IsPostBack)
{
GridView1.DataSource=Enumerable.Range(1,10);
GridView1.DataBind();
}
}