动态2 html按钮“提交”控件,如何知道在代码中单击哪个按钮

时间:2012-06-30 15:54:32

标签: asp.net

我将动态按钮实现为html控件,但不触发按钮的click事件。

我的代码是

for (iDynamicPageCount = 0; iDynamicPageCount < GrdResult.PageCount - 1; iDynamicPageCount++)
{
    string sDynamicSybntext = 
        "<li><button type=\"submit\" runat=\"server\" onserverclick=\"btnNext1_Click\" id=" + strName + ">" + (iDynamicPageCount + 2).ToString() + "</button></li>";
    sbPaging.Append(sDynamicSybntext);
}

GrdResult.PageCount - 1按钮数量将创建。

最后添加到文字控件

p0.Text = sbPaging.ToString();

当我单击按钮btnNext1_Click事件未触发时,仅发生回发。

2 个答案:

答案 0 :(得分:0)

您的所有按钮都不是服务器端,因为您只是在响应流中追加字符串。所以请删除runatonserverclick

喜欢(通过我添加的循环生成按钮)

<input type="submit" name="pageButton" value="value1" />
<input type="submit" name="pageButton" value="value2" />
<input type="submit" name="pageButton" value="value3" />
<input type="submit" name="pageButton" value="value4" />

您可以从请求对象

获取点击按钮的页面加载事件值
 string ValueOfClickedButton = Request["pageButton"];

答案 1 :(得分:0)

我可以看到你正在使用的问题是type =“submit”

所以请将其更改为type =“button”

type="submit" will submit the form by default
type="button" will not submit form and have no default behaviour.