包含在Repeater 里的数据如何调用Js

古龙老子 2010-11-01 08:39:42
<script type="text/javascript">
function calculatePrice(name,x,name2,name3,name4){
var priceId=name+x;
var numberId=name3+x;
var discountId=name2+x;
var totlePriceId=name4+x;
var kucunNumber = parseInt(document.getElementById(kucun1).innerHTML)
var goodsNumber=parseInt(document.getElementById(numberId).value);
if(goodsNumber<=kucunNumber){
var price=parseInt(document.getElementById(priceId).innerHTML)*parseFloat(document.getElementById(discountId).innerHTML)*goodsNumber;
document.getElementById(totlePriceId).innerHTML=price;
}else{
alert("不能大于"+kucunNumber);
}
}
</script>


<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr>
<td><asp:CheckBox ID="CheckBox2" runat="server" /></td>
<td><%#Eval("nid")%></td>
<td><%#Eval("ItemId")%></td>
<td><asp:Label ID="lbltm" runat="server" Text='<%#Eval("CommodityCode") %>'></asp:Label></td>
<td><asp:Label ID="lblhm" runat="server" Text='<%#Eval("ItmeName")%>'></asp:Label></td>
<td><asp:Label ID="kucun1" runat="server" Text='<%#Eval("CanOrder") %>'></asp:Label></td>
<td><asp:Label ID="lbldw" runat="server" Text='<%#Eval("Unit")%>'></asp:Label></td>
<td><asp:Label ID="price1" runat="server" Text='<%#Eval("Retail")%>'></asp:Label></td>
<td><asp:Label ID="zekou1" runat="server" Text='<%#Eval("zkl")%>'></asp:Label></td>
<td><asp:TextBox ID="number1" runat="server" onblur="calculatePrice('price',1,'zekou','number','totlePrice')" ></asp:TextBox> </td>
<td><asp:Label ID="totlePrice1" runat="server" ></asp:Label></td>
</tr>
</ItemTemplate>
</asp:Repeater>

我在这里调用不行的因为包含在Repeater 里面了,不包含就可以
...全文
288 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yulei243007703 2010-11-01
  • 打赏
  • 举报
回复
calculatePrice('price',1,'zekou','number','totlePrice')参数中的控件ID要使用该控件的ClientID。具体做法是在后台的绑定事件中通过FindControl方法找到该TextBox控件,再给这个TextBox添加属性就可以了
古龙老子 2010-11-01
  • 打赏
  • 举报
回复
能不能具体点呢?
shenhui_163 2010-11-01
  • 打赏
  • 举报
回复
先获得Repeater中的控件.然后在写 js
古龙老子 2010-11-01
  • 打赏
  • 举报
回复
你们搞错了,红色部分是调用JS的地方,TextBox 就是调用js来算出数据的
bychgh 2010-11-01
  • 打赏
  • 举报
回复
帮顶~~~~~~~~~
poppinH 2010-11-01
  • 打赏
  • 举报
回复
先获得控件 就是button C的那玩意..

我的是判断某个值为T或者F 再编辑这个控件...

先设定这个值的文本..然后再用C.Attributes.Add("onclick","JS代码").

PS:一定要用asp:button控件..用idput的话报错.!~
poppinH 2010-11-01
  • 打赏
  • 举报
回复
直接用js代码..!~

 if (e.Item.ItemType != ListItemType.Header)
{
Button C = (Button)e.Item.FindControl("Change");
if (iac14.ToUpper() == "FALSE")
{
C.Text = "编辑";
C.Attributes.Add("onclick", "javascript:window.open ('UpdateFits.aspx?iac01=" + iac01 + "', '', 'height=100, width=800, top=350, left=200, toolbar=no, scrollbars=no, resizable=no,location=no, status=no')");
}
孟子E章 2010-11-01
  • 打赏
  • 举报
回复
在绑定事件里面,使用
FindControl找到控件,使用ClientID传参数

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧