Jquery 如何在Asp.net中分配GridView文本框中下拉列表的选定文本
如果要将下拉列表的选定文本值指定给同一行的另一个单元格中的文本框。您可以使用jQuery实现同样的功能。请参考下面的例子Jquery 如何在Asp.net中分配GridView文本框中下拉列表的选定文本,jquery,asp.net,gridview,selected,Jquery,Asp.net,Gridview,Selected,如果要将下拉列表的选定文本值指定给同一行的另一个单元格中的文本框。您可以使用jQuery实现同样的功能。请参考下面的例子 $(function() { $("[id*=ddlCurrency]").change(function() { var ddy = $(this).find('option').filter(':selected').text(); var row = $(this).closest("tr"); $("[id*=txtProjectCurrencyNa
$(function() {
$("[id*=ddlCurrency]").change(function() {
var ddy = $(this).find('option').filter(':selected').text();
var row = $(this).closest("tr");
$("[id*=txtProjectCurrencyName]", row).val(ddy);
});
})) 除非您在其他地方出现脚本错误,否则代码正在运行 这是我的测试-
$(函数(){
$(“[id*=ddlCurrency]”)。更改(函数(){
var ddy=$(this).find('option').filter(':selected').text();
var行=$(此).tr;
$(“[id*=txtProjectCurrencyName]”,第行).val(ddy);
});
});
代码隐藏
使用系统;
使用System.Collections.Generic;
命名空间DemoWebForm
{
公共部分类GridViewDemo:System.Web.UI.Page
{
公营货币
{
公共int Id{get;set;}
公共字符串名称{get;set;}
}
公共静态IList货币=新列表
{
新货币{Id=1,Name=“One”},
新货币{Id=2,Name=“Two”},
新货币{Id=3,Name=“Three”}
};
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!IsPostBack)
{
GridView1.DataSource=货币;
GridView1.DataBind();
}
}
}
}
除非您在其他地方出现脚本错误,否则您的代码正在运行
这是我的测试-
$(函数(){
$(“[id*=ddlCurrency]”)。更改(函数(){
var ddy=$(this).find('option').filter(':selected').text();
var行=$(此).tr;
$(“[id*=txtProjectCurrencyName]”,第行).val(ddy);
});
});
代码隐藏
使用系统;
使用System.Collections.Generic;
命名空间DemoWebForm
{
公共部分类GridViewDemo:System.Web.UI.Page
{
公营货币
{
公共int Id{get;set;}
公共字符串名称{get;set;}
}
公共静态IList货币=新列表
{
新货币{Id=1,Name=“One”},
新货币{Id=2,Name=“Two”},
新货币{Id=3,Name=“Three”}
};
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!IsPostBack)
{
GridView1.DataSource=货币;
GridView1.DataBind();
}
}
}
}
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridViewDemo.aspx.cs" Inherits="DemoWebForm.GridViewDemo" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView runat="server" ID="GridView1" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="Id" />
<asp:BoundField DataField="Name" />
<asp:TemplateField>
<ItemTemplate>
<asp:DropDownList runat="server" ID="ddlCurrency">
<asp:ListItem Text="" Value="" />
<asp:ListItem Text="USD" Value="USD" />
<asp:ListItem Text="EUR" Value="EUR" />
<asp:ListItem Text="GBP" Value="GBP" />
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox runat="server" ID="txtProjectCurrencyName" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script>
$(function () {
$("[id*=ddlCurrency]").change(function () {
var ddy = $(this).find('option').filter(':selected').text();
var row = $(this).closest("tr");
$("[id*=txtProjectCurrencyName]", row).val(ddy);
});
});
</script>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
namespace DemoWebForm
{
public partial class GridViewDemo : System.Web.UI.Page
{
public class Currency
{
public int Id { get; set; }
public string Name { get; set; }
}
public static IList<Currency> Currencies = new List<Currency>
{
new Currency {Id = 1, Name = "One"},
new Currency {Id = 2, Name = "Two"},
new Currency {Id = 3, Name = "Three"}
};
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = Currencies;
GridView1.DataBind();
}
}
}
}