【问题标题】:Clear PlaceHolder controls on client side在客户端清除 PlaceHolder 控件
【发布时间】:2012-06-02 16:14:39
【问题描述】:

是否可以使用 JavaScript 清除客户端的所有 asp:PlaceHolder 控件?

类似:placeHolder.Controls.Clear() - 但这是在服务器端。

【问题讨论】:

    标签: javascript asp.net placeholder


    【解决方案1】:

    您可以使用以下 jQuery 代码:

    $("#placeHolder").html("");
    

    【讨论】:

    • PlaceHolder 将创建一个没有任何 ID 的简单 DIV,所以不要认为它会起作用
    • 这里也不说是用jQuery,这到底是怎么回事
    【解决方案2】:

    不优雅,但有效。用另一个 div 包围您的 PlaceHolder:

    <div id="masterDiv">
            <asp:PlaceHolder runat="server" ID="placeHolder1" >
                Some stuff
                <input type="text" />
                <input type="submit" value="Don't click!" />
            </asp:PlaceHolder>
     </div>
    

    如果可以使用 jQuery,则使用 empty 函数或 html('')

    $('#masterDiv').empty();
    

    或者

    $('#masterDiv').html('');
    

    如果你必须使用 JavaScript,那么做同样的事情:

    document.getElementById('masterDiv').innerHTML = "";
    

    【讨论】:

    • 感谢您的回复。我可以使用 JQUERY,我尝试了两种解决方案,但它不起作用。为了使事情更清楚,我只想清除 asp:PlaceHolder 中的控件。根据您的示例:
    • 您是要清除这些控件的内容,还是要清除所有控件的整个占位符,以便留下
      (后者确实有效)?
    • 我想清除占位符控件(控件本身,而不仅仅是它们的内容),但我不想从页面中删除占位符。完全像 - placeholder.controls.clear() 函数,但在客户端。
    • 这个话题有很多建议:stackoverflow.com/questions/6364289/…
    • 谢谢安德烈,但我不想清除文本框文本,例如。我想从占位符中删除文本框本身。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多