【问题标题】:Data List itemCommand function is not working数据列表项命令功能不起作用
【发布时间】:2021-04-25 14:08:45
【问题描述】:

我尝试使用 itemcommand 函数创建一个数据列表,尽管由于某种原因,该程序似乎没有进入 itemcommand 的函数。

aspx

<asp:DataList ID="DataList1" runat="server" OnItemCommand="DataList1_ItemCommand" DataKeyField="jobID">
    <ItemTemplate>
       <div class="jobContainer">
          <div class="jobDetails">
             <span class="jobName"><%# Eval("jobName") %></span><br /> 
             <hr class="style13">
             <a class="Details">    <b>Requirments: </b><span ><%# Eval("jobRequirments") %> WPM</span>   </a> 
             <a class="Details">  <b>Salary: </b><span ><%# Eval("jobSalary")%> Shekel per hour</span>  </a>
              
             <a class="Details">   <b>City: </b><span ><%# Eval("jobCity")%></span> 
              <asp:Button ID="Button1" runat="server" CommandName="Details" Text="Show Details" />


        </div>
      </div>
    </ItemTemplate>
</asp:DataList>

代码背后:

protected void Page_Load(object sender, EventArgs e)
{
    // getjobs returns a dataset
    Service.Service a = new Service.Service();
    DataList1.DataSource = a.getjobs();
    DataList1.DataBind();
}

protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
    if (e.CommandName == "Details")
    {
        Response.Redirect("Home.aspx");

    }
}

【问题讨论】:

  • 你在哪里绑定你的数据列表,在 PageLoad 中?
  • 是的。我更新了它。你现在可以看到了。
  • 数据列表本身工作正常,我可以看到其中的数据。唯一的问题是该按钮正在刷新页面而不做任何事情。 (不进入 itemcommand 功能)
  • 看我的回答,你需要改变你的Page_Load,它应该可以解决你的问题。
  • 是的。它现在正在工作。非常感谢。

标签: c# asp.net datalist itemcommand


【解决方案1】:

我怀疑您在使用 Page.IsPostBack 时遇到问题,因此请确保在 Page_Load 中的 Page 不是 PostBack 时绑定 DataList,如下所示:

protected void Page_Load(object sender, EventArgs e)
{
   if (!IsPostBack) 
   {
        //Bind your DataList
        Service.Service a = new Service.Service();
        DataList1.DataSource = a.getjobs();
        DataList1.DataBind();
   }
}

查看更多关于Page.IsPostBack的信息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 2016-04-05
    • 1970-01-01
    相关资源
    最近更新 更多