我在一个asp.net应用程序上工作,在这个应用程序中,我能够将数据从SQL加载到aspx的网格视图中。page.User具有编辑和保存网格视图中的值的能力。我的网格视图有项目模板,其中我有两个带文本框的列。我想突出显示用户在网格视图中编辑的所有具有不同颜色的单元格。
我可以为另一个aspx页面中的文本框做同样的事情,没有使用java脚本的gridview,代码如下:
<script type="text/javascript">
$(document).ready(function() {
$(':input').change(function() {
$(this).addClass("textchanged");
});
});
</script>
<asp:GridView runat="server" ID="gvnames" AutoGenerateColumns="False" CellPadding="4"
Font-Names="Georgia" ForeColor="Black" GridLines="Vertical" BackColor="White"
BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" DataKeyNames="Name"
DataSourceID="SqlDataSource1"
>
<RowStyle BackColor="#F7F7DE" />
<colums>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:Label ID="lblName" Visible='<%# !(bool) IsInEditMode %>' runat="server"
Text='<%# Eval("Name") %>' />
<asp:TextBox ID="txtName" Width="250px" Visible='<%# IsInEditMode %>' runat="server" Text='<%# Eval("Name") %>' />
</ItemTemplate>
</asp:TemplateField>
</colums>
<FooterStyle BackColor="#CCCC99" />
<PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
<SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>当我尝试为网格视图中的文本框实现相同的代码时,它不起作用。这是正确的方法吗,还是有其他方法可以实现?如果有人能给我指引正确的道路,我将不胜感激。
发布于 2011-12-14 22:19:01
我认为您应该删除jquery中单词输入前面的:。此外,如果这只发生在文本框上,那么你应该在jquery选择器中更具体,并将其更改为:
$('input[type=text]')发布于 2011-12-14 23:23:09
在您的标记中,请更改
<colums><colums>-tag to
<Columns></Columns>如果jQuery运行正常,这应该会有所帮助
https://stackoverflow.com/questions/8505885
复制相似问题