将jQuery click事件添加到生成按钮后面的代码中

时间:2015-03-21 04:35:55

标签: javascript c# jquery asp.net

在后面的代码中单击创建一个按钮(Replybtn) - Default.aspx.cs -

protected void ReloadThePanelDetails_Click(object sender, EventArgs e)
{
  litResultDetails.Text = litResultDetails.Text +
  "<button id='Replybtn' onclick='replyfunc(this); return false;'>Reply to this thread</button><br />";
}

- Default.aspx的 -
使用javascript点击Replybtn

 <script type = "text/javascript">
 function replyfunc(obj1) {
     document.getElementById(obj1.id).click();
  }
</script>

对Replybtn使用jquery点击事件

<script>
$(document).ready(function () {
 $('.replypanel').css({ "display": "none" }); //div by default no display
    $("#Replybtn").click(function () {       //onclick div to display
        $('.replypanel').css({ "display": "block" });
    });
});
</script>

div不显示Replybtn的onclick(在后面的代码中生成)。 请建议上述任何其他解决方案或任何更新。

1 个答案:

答案 0 :(得分:2)

您需要使用Event delegation来监听动态生成的dom元素

<script>
$(document).ready(function () {
 $('.replypanel').css({ "display": "none" }); //div by default no display
    $(document).on('click',"#Replybtn",function () {       //onclick div to display
        $('.replypanel').css({ "display": "block" });
    });
});
</script>