首页 > 解决方案 > c#asp.net动态生成按钮

问题描述

朋友我有一个问题,我有一个生成按钮的按钮,它动态生成 5 个按钮,并且它们有一个单击事件将我重定向到一个页面,但是当我单击生成的按钮时,它会重新加载页面并且什么都不做。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace pruebastack
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btngenerar_Click(object sender, EventArgs e)
        {
            for(int i=1; i<=5; i++)
            {
                System.Web.UI.WebControls.Button Button1 = new System.Web.UI.WebControls.Button();
                Button1.Text = "boton" + i;
                Button1.Click += delegate
                {
                    Response.Redirect("https://www.udemy.com/courses/search/?p="+i+"&q=java");
                    
                };
                this.Panel1.Controls.Add(Button1);
            }
            
        }
    }
}

标签: c#asp.net

解决方案


这对你有用吗?我检查过了,它有效

protected void Button1_Click(object sender, EventArgs e)
        {
            for (int i = 1; i <= 5; i++)
            {
                System.Web.UI.WebControls.Button Button2 = new System.Web.UI.WebControls.Button();
                Button2.Text = "boton" + i;
                Button2.UseSubmitBehavior = false;
                Button2.OnClientClick = $"return window.location.href = 'https://www.udemy.com/courses/search/?p={i}&q=java'";
                this.Panel1.Controls.Add(Button2);
            }
        }

推荐阅读