해결했습니다. 방금 버튼에 대한 리피터를 사용했습니다.버튼 하나만 제외하고 모두
foreach 주기로 여러 테이블을 만들고 각 테이블에는 별도의 페이지로 연결되는 버튼이 있습니다. 다음은 버튼에 대한 html 코드입니다.
<form name='input' action='AuctionDetails.aspx' method='get'>
<input type='submit' value='Bid now' name='{5}'/>
</form>
지금, 나는 첫 제외한 모든 버튼가 일하는 (약 50) 반복 많이 을 보유하고 있습니다. 결과를 필터링 (더 적은 테이블 반환) 할 때도 모든 버튼이 작동합니다 (첫 번째 버튼 제외).
다음은 전체 방법입니다.
private void FillPageAuctions()
{
IEnumerable<AuctionClass> query = null;
var context = new AuctionsEntities();
string queryString = Request.QueryString.ToString();
if (Request.QueryString.ToString() != "")
{
query = from e in context.Auctions
where e.Category.Name == queryString
select e;
}
else
{
query = from e in context.Auctions select e;
}
StringBuilder sb = new StringBuilder();
if (query.Count() == 0)
{
sb.Append("There are no auctions in this category.");
}
else
{
foreach (AuctionClass auction in query)
{
string temp = auction.AuctionName;
if (auction.AuctionName.Length > 12)
{
temp = auction.AuctionName.Remove(12);
temp = temp + "...";
}
sb.Append(String.Format(@"<table style='border: 1px solid #666666;
float:left;
width: 24%;
margin: 0px 3px 3px 3px;
text-align: center;'>
<tr><th style='font-size: 18px'>{0}</th></tr>
<tr><td><img src='{1}' height='100px' width='100%'/></td></tr>
<tr><td>Price: ${2}</td></tr>
<tr><td>Time Left: </td></tr>
<tr><td>{3} hours</td></tr>
<tr><td>{4} minutes</td></tr>
<tr><td>
<form name='input' action='AuctionDetails.aspx' method='get'>
<input type='submit' value='Bid now' name='{5}'/>
</form>
</td></tr></table>", temp, "Untitled.png",
auction.CurrPrice, 0, 0, auction.AuctionID));
}
}
AuctionListLabel.Text = sb.ToString();
}
작동하지 않는 것으로 정의하십시오. 오류가 발생합니까? –
귀하의 질문에 귀하가 말하는 코드 만 게시하십시오. 이것은 코드 리뷰 페이지가 아닙니다. – Reniuz
@Bojan *** ASP.Net은 단일 페이지에 여러 개의 양식 태그를 허용하지 않습니다. *** – Win