js 获取Gridview textbox 值的问题

在当前项目中,遇到一个需求,需要在GridView内的TextBox值发生变化时执行特定操作。以下是实现这一功能的代码片段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近做个项目,里面要在gridview 的 textbox 值改变时候做一些操作,代码如下:

<asp:GridView ID="gvDesign" Width="480px" runat="server" AutoGenerateColumns="False"
                                    GridLines="None" BorderStyle="None" BorderWidth="0px" CellPadding="3" EnableModelValidation="True"
                                    DataKeyNames="Id" OnRowDataBound="gvDesign_RowDataBound">
                                    <%--<AlternatingRowStyle BackColor="#DCDCDC" />--%>
                                    <Columns>
                                        <asp:TemplateField ItemStyle-Width="150px" HeaderText="" HeaderStyle-HorizontalAlign="Left">
                                            <ItemTemplate>
<asp:TextBox id="txtCost"  onpropertychange="CalculateProfit(this);" runat="server"/>
<asp:DropDownList ID="ddlPriceCurrency" runat="server" onChange="CalculateProfit(this);">
                                                            <asp:ListItem Value="1">USD</asp:ListItem>
                                                            <asp:ListItem Value="2">EUR</asp:ListItem>
                                                            <asp:ListItem Value="3" Selected="True">RMB</asp:ListItem>
                                                        </asp:DropDownList>
 </ItemTemplate>
                                                </asp:TemplateField>
 </Columns>
                                        </asp:GridView>
以下是js 代码:
 function CalculateProfit(obj) {
            //CurrencyRates send from server side as an Array. 
            //alert(obj.parentNode.parentNode.cells[1].childNodes[1].value);
            //debugger; 
            var strCost = obj.parentNode.parentNode.cells[0].childNodes[0].value;
            var originalCost = strCost.toString().replace(/[^\d]/g, "");
}
结果发现obj.parentNode.parentNode.cells[0].value的值为空,需要把cells[0]改为cells[1],但是发布到IIS里面是能取到值的,后来反复研究 ,各种调试,也没个解决方案,这真是一个奇葩的问题,最后直接替换成obj.parentNode.parentNode.cells[0].getElementsByTagName("input")[0].value这样就不会纠结于那个node了,至此问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值