用jquery无效的div替换文本框

时间:2012-09-23 11:13:32

标签: jquery

  

可能重复:
  replace textbox with div with jquery not working

它只是工作几秒钟然后div再次消失:

$(document).ready(function () {

    $("#done").click(function () {
        $('#txtname').replaceWith(function () {

            return '<div>' + $(this).val() + '</div>';
        });
    });

的.aspx

 <asp:TextBox ID="txtname" runat="server" BorderColor="#96A6C5" CssClass="txt"></asp:TextBox></div>

<div class="text">
<asp:Button ID="done" runat="server" onclick="done_Click"/>
</div>

的.cs

protected void done_Click(object sender, EventArgs e)
    {

    }

2 个答案:

答案 0 :(得分:0)

脚本部分应该可以正常工作。但我认为您访问控件的方式存在问题。

$("#done")$("#txtname")应该是$("#<%=done.ClientID%>")  和$("#<%=txtname.ClientID%>")分别。

答案 1 :(得分:0)

如果ID不起作用,您也可以使用this

    $('#<%=done.ClientID%>').click(function() {
        $('#<%=txtname.ClientID%>').replaceWith(function() {

            return '<div>' + $('#<%=txtname.ClientID%>').val() + '</div>';
        });
return false;
    });

如果上面没有工作,这是另一个例子

    $('#<%=done.ClientID').click(function() {
        $('#<%=txtname.ClientID%>').replaceWith('<div>' + $('#<%#txtname.ClientID').val() + '</div>');

return false;
    });