只想询问是否可以复制网格中行的第一个值? 例如。我有两个专栏。 A和B值是。如果我在第一行的B列中放置任何值。它应该填满剩下的所有行。
**Serial** **CartNum** Output **CartNum**
1 1 1
2 1
3 1
4 1
这可能吗?我正在使用ASP.NET(VB),我想这是javascript吗?
这是我的网格代码。
<div class="Scrolls">
<asp:DataGrid runat="server" ID="dgSerial" AutoGenerateColumns="false" ShowFooter="false" ShowHeader="false" GridLines="None" DataKeyField="BaseLineNum" AlternatingItemStyle-CssClass="AlternateGrid">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<table border="0" style="border-bottom: 1px dotted; border-color: #FF0000">
<tr>
<td style="width: 20px;">
<asp:CheckBox runat="server" ID="chkSelect"></asp:CheckBox>
</td>
<td style="width: 120px;">
<asp:TextBox Width="120" ID="SerialNum" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "SerialNum")%>' />
</td>
<td style="width: 120px;">
<asp:TextBox Width="120" ID="CartNum" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "CartNum")%>' />
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</div>
希望听到积极的回应。
答案 0 :(得分:0)
试试这个,它会帮助你
<script type="text/javascript">
function copy(){
var inputCount = document.getElementById('tableId').getElementsByTagName('input').length;
var name = document.getElementById('name').value;
for(i=1;i<=inputCount;i++){
document.getElementById('name_'+i).value = name;
}
}
</script>
<table id="tableId">
<tr>
<td>
<input type="text" id="name" onkeyup="copy();" name="name" />
<input type="text" id="name_1" name="name_1" />
<input type="text" id="name_2" name="name_2" />
<input type="text" id="name_3" name="name_3" />
<input type="text" id="name_4" name="name_4" />
</td>
</tr>
</table>
答案 1 :(得分:0)
您必须按上述方式编辑第二行模板:
<asp:TextBox Width="120" ID="CartNum" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "CartNum")%>'
onchange="javascript: copy();" CssClass="row2"/>
然后添加Javascript魔法:
<script type="text/javascript">
function copy() {
var cells = document.getElementsByClassName("row2");
for(var i = 1; i < cells.length; i++)
cells[i].value = cells[0].value;
}
</script>
我现在无法对此进行测试,所以我不确定它是否可以正常工作,但我相信它会稍作修改。
请注意,javascript代码始终从列的第一个单元格(cells [0])中获取值,因为您的问题正是您所要求的。