asp.net 关于<FORM>标记与<form runat="server">标记问题
我想实现一个在本页实现修改记录的效果,例如:1、"内容"修改,当我把内容修改完之后,点修改即可写回到数据库。我想用多<FORM>提交效果,如下设计代码:<tablewid...
我想实现一个在本页实现修改记录的效果,例如:1、"内容" 修改,当我把内容修改完之后,点修改即可写回到数据库。我想用多<FORM >提交效果,如下设计代码:
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<asp:Repeater ID="repeater1" runat="server">
<ItemTemplate>
<tr>
<form name="formm<%# Eval("sortsid") %>" method="post" action="?action=upd">
<td height="25">
<input type="text" value="<%# Eval("namee")%>" name="Sorts"/>
<input type="hidden" value="<%# Eval("sortsid")%>" name="sortsid">
<input type="submit" value="修改" />
<input type="button" onclick="javascript:window.location='?action=del&sortsid=<%# Eval("sortsid") %>'" value="删除" />
</td></form>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
但是实现不了,关于这种实现效果,应该怎么实现,不想用DataGrid控件. 展开
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<asp:Repeater ID="repeater1" runat="server">
<ItemTemplate>
<tr>
<form name="formm<%# Eval("sortsid") %>" method="post" action="?action=upd">
<td height="25">
<input type="text" value="<%# Eval("namee")%>" name="Sorts"/>
<input type="hidden" value="<%# Eval("sortsid")%>" name="sortsid">
<input type="submit" value="修改" />
<input type="button" onclick="javascript:window.location='?action=del&sortsid=<%# Eval("sortsid") %>'" value="删除" />
</td></form>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
但是实现不了,关于这种实现效果,应该怎么实现,不想用DataGrid控件. 展开
展开全部
看样子你根本上还不懂.net
对于.net只需要一个form就够了,把你这一段写个东西给你看,
<asp:Repeater ID="repeater1" runat="server" OnItemCommand="repeater1_ItemCommand">
<HeaderTemplate>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td height="25">
<input type="text" value="<%# Eval("namee")%>" name="Sorts"/>
<asp:Button runat="server" ID="Button2" Text="修改" CommandName="edu" CommandArgument='<%# Eval("sortsid")%>' />
<asp:Button runat="server" ID="Button1" Text="删除" CommandName="del" CommandArgument='<%# Eval("sortsid")%>' />
</td></form>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
protected void repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
int sortsid = Convert.ToInt32(e.CommandArgument);//sortsid的值
switch (e.CommandName)
{
case "edu":
{
//修改
break;
}
case "del":
{
//删除
break;
}
}
}
以上只是仅举个小例子,
其实你可以在button的CommandArgument属性里绑定其它东西,
比如行的索引<%# Container.ItemIndex %>
这样你就可以通过CommandArgument得到任何一行
然后你可以通过
this.repeater1.Items[Convert.ToInt32(e.CommandArgument)].FindControl("")找到任何控件,得到它们的值,处理它们,.net不是asp一个页面可以做很多很多后情,不需要搞那么多页传参
对于.net只需要一个form就够了,把你这一段写个东西给你看,
<asp:Repeater ID="repeater1" runat="server" OnItemCommand="repeater1_ItemCommand">
<HeaderTemplate>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td height="25">
<input type="text" value="<%# Eval("namee")%>" name="Sorts"/>
<asp:Button runat="server" ID="Button2" Text="修改" CommandName="edu" CommandArgument='<%# Eval("sortsid")%>' />
<asp:Button runat="server" ID="Button1" Text="删除" CommandName="del" CommandArgument='<%# Eval("sortsid")%>' />
</td></form>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
protected void repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
int sortsid = Convert.ToInt32(e.CommandArgument);//sortsid的值
switch (e.CommandName)
{
case "edu":
{
//修改
break;
}
case "del":
{
//删除
break;
}
}
}
以上只是仅举个小例子,
其实你可以在button的CommandArgument属性里绑定其它东西,
比如行的索引<%# Container.ItemIndex %>
这样你就可以通过CommandArgument得到任何一行
然后你可以通过
this.repeater1.Items[Convert.ToInt32(e.CommandArgument)].FindControl("")找到任何控件,得到它们的值,处理它们,.net不是asp一个页面可以做很多很多后情,不需要搞那么多页传参
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询