繁体   English   中英

使用jquery更改输入字段值的问题

[英]issue in changing value of input field using jquery

HTML

<div id="wrapper">
<p>This is a basic tag input: 
    <input id="tag1" value="alpha,beta,gamma" />
</p>
</div>
<textarea id="tagdetect"></textarea>

脚本

$("#tagdetect").live("keydown",function(){

    var textTyped=$("#tagdetect").val();
    var text=textTyped.split(" ");
    for(i=0;i<text.length;i++){

        if(text[i]=="sql"||text[i]=="html"||text[i]=="java"){

            $("#tag1").val()=text[i];
        }
    }
});

我想要实现的目标

我想在检测到某些关键字时在该输入字段中添加标签(即值)

工作版

http://jsfiddle.net/7aDak/4839/

您的jQuery语法中有错误。

更改以下行

$("#tag1").val()=text[i];

对此:

$("#tag1").val(text[i]);

设置您应该使用的值:

 $("#tag1").val(text[i])

函数.val()需要有你想要追加的参数:

var value = $("#tag1").val();
$("#tag1").val(value + text[i]);

我认为除了修复你的错误之外,这更优雅 - 假设你想要现场的所有标签

var types = ["sql","html","java"];

$("#tagdetect").on("keydown",function(){

  var textTyped=$("#tagdetect").val();
  var text=textTyped.split(" ");
  $.each(text,function(_,txt) {
    if ($.inArray(txt,types)!=-1) $("#tag1").append(txt+" ");
  });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM