【问题标题】:clear button empties textarea but I cannot repopulate it清除按钮清空文本区域,但我无法重新填充它
【发布时间】:2013-10-24 22:06:52
【问题描述】:

我正在尝试创建一个网页

  1. 如果用户点击一个单词,它会显示在一个文本框中
  2. 如果一个词被点击两次,它就不会再次出现在框中
  3. 用户可以通过按钮清除该框
  4. 用户可以将内容发送到另一个页面

我的代码如下:

<div id="parent">
    <!-- get the clicked word and add it to textarea-->
    <script type="text/javascript">
        $("#parent").delegate("span", "mousedown", function() {
            if ( $("#thediv").text().indexOf($(this).text()) <0 )
            {
                $("#thediv").append($(this).text());// get old div contents and add clicked word
                $("#thediv").append(' ');// also add a space
                $("#thediv").html(); //print to div
            };   
       })
    </script>

    <!-- clickable words  -->    
    <span>One </span><span>Two</span><span>Three</span>

    <!-- the form --> 
    <form action="/test/index6.html" method="get">
        <textarea id="thediv" name="thediv"></textarea><br>
        <input type="submit" >
    </form>

    <!-- Clear button  -->     
    <input type="button" id="clear" value="Clear" />
    <script type="text/javascript">
        $('#clear').click(function (){
            $("#thediv").val('');
        });
    </script>
</div>

它工作正常,在鼠标点击时,点击的单词被存储(如果它位于标签之间。对于每个点击的单词,我检查文本区域是否已经包含它,如果没有,我添加它。

我的问题是清除按钮。它清除了文本区域,但我不能再添加任何单词,就好像这部分代码停止工作一样。

有什么建议吗?

【问题讨论】:

    标签: javascript html jquery button


    【解决方案1】:

    尝试将$("#thediv").val(''); 更改为$("#thediv").html('');,如this jsfiddle

    【讨论】:

    • 顺便说一句,关于这段代码的另一个方面,我还有另一个问题,即如何在每个允许我删除它的单词旁边放置一个 (x)。 stackoverflow 礼仪是否需要一个新问题,或者我可以扩展这个问题吗?
    • 最好的办法是打开一个新问题。我很乐意帮你回答,甚至:)
    猜你喜欢
    • 1970-01-01
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多