0

我确实有文本框和两个复选框,我可以在单击按钮时清除其值:

$("#cleartext").live('click', function () {
        $(this).parents('form').find('input[type="text"]').val('');
        $(".check").attr("checked", false);
    });

但我确实有一个文本区域,我在其中使用 html 编辑器,但我无法清除它的值,所以请就此向我提出建议,这些元素的视图如下:

    <input type="text" id="title" name="title" required title="required" placeholder="title" data-bind="value:title" />
                            <input type="checkbox" id="active" name="active" class="check" data-bind="checked: active=='true'"  />Active
                            <input type="checkbox" id="logon" name="logon" class="check" data-bind="checked: use_logo=='true'"  />Logo
    <textarea id="iiii" name="iiii" class="htmleditor" rows="9" cols="50" style="width: 600px; height: 190px;"></textarea>
<button type="button" class="btn"  id="cleartext">New Contract</button>
4

4 回答 4

1

您正在使用哪个 HTML 编辑器..

FCK或类似的开源编辑器有各自的方法来清除所有内容

例如

<script type="text/javascript"> 
function resetEditor(id) {
FCKeditorAPI.GetInstance(id).SetData('');
}
</script>. 

对于 wysihtml5 试试下面

var rte = $('#description').wysihtml5();
   rte.setValue('');
于 2013-01-31T09:19:09.257 回答
1

如果我找到正确的插件,下面应该可以正常工作:

$('#iiii').data("wysihtml5").editor.clear()
于 2013-01-31T09:37:56.930 回答
0

建议与更正

该功能$.live()已弃用。所以更改以下代码:

$("body").on('click', "#cleartext", function () {
    $(this).parents('form').find('input[type="text"]').val('');
    $(".check").attr("checked", false);
});

现在取决于文本区域,例如。Redactor,你需要这样清除:

editor.setCode('<p></p>');
于 2013-01-31T09:15:19.863 回答
0

正如 Praveen Kumar 所说,$.live()已弃用。以下应该有效,并清除文本区域:

$("body").on("click", "#cleartext", function() {
    $(this).parents("#your-form").find("input[type='text']").val("");
    $(".check").attr("checked", false);
    $("#iiii").val("");
});

但是如果你的函数被频繁调用,你应该绑定$.on()在更近的块上。您还应该避免$.parents(),因为这些功能很重。

于 2013-01-31T09:25:51.117 回答