擦除/清除文本区域后,我不能再向其添加文本



我正在构建一个工具来帮助我组装不同的AdWords关键字组合。我有一个简单的表单,有三个复选框,一个输入框(用于开始关键字),一个提交按钮和一个用于结果的文本区域(输入的变化)。

第一次它工作得很好,我的条件都在工作,我可以运行一系列的关键字,在每个.submit()上,将填充文本区域。当我删除内容时,问题就出现了。下面是一个如何填充它的示例:

if($("#phrase").is(":checked")) {
    //Get keywords from input
    var text = $("#keyword").val();
    //Prepend and append double-quotes
    text = """ + text + """;
    //Output
    var val = $("#output").val();
    $("#output").append(text + "rn");
} 

当我提交时,我知道它仍然在我的.submit()函数中执行,因为如果我取消选中所有的框,我的alert(未显示)会被抛出。

认为这是我在重置的逻辑中缺少的东西,我完全删除了重置并将其发布到我的个人网站,这样我就可以开始工作了。我跑掉了一些关键字,然后手动删除了文本框的内容。奇怪的是,同样的事情仍然发生:擦除/清除文本框后,我不能让它采取关键字,并创建任何更多的变化!

我在这里创建了一个小提琴:关键字变化小提琴-我能够重新创建这个问题,不知道为什么会发生。在生成几个关键字后尝试删除文本,然后再尝试生成更多的关键字。

有趣的问题。我担心你在文本区域上使用append,因为我记得听到文本区域更像文本输入而不是div,所以我尝试使用val代替,它工作得很好。

http://jsfiddle.net/gYFP3/4/

下面是相关代码

//Output
var $output = $("#output");
var val = $output.val();
$output.val(val + text + "n");

最新更新