【发布时间】:2018-01-27 17:33:21
【问题描述】:
当我想向现有文本框添加笑脸时,我发现了一个问题。代码
$cnt=$("#comContent").val
$("#addSmiley").click(function() {
console.log($cnt);
$cnt = $cnt + ":)";
console.log($cnt);
});
#comContent {
width: 100%;
height: 120px;
border: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://afeld.github.io/emoji-css/emoji.css" rel="stylesheet">
<textarea id="comContent" cols="70" rows="20"></textarea>
<i style="margin-left: 10px;overflow:visible;cursor:pointer;" id="addSmiley" class="em em-smiley"></i>
基本上我想做的是,在用户单击笑脸图标后,代码应在文本框中添加“:)”。我添加了 console.log 以查看为什么它没有添加任何内容。然后我看到了这个:
function (a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(gb,""):null==c?"":c)}}:)
我以为这将是一个简单的代码,但我不知道它有什么问题,以及为什么它不起作用
【问题讨论】:
-
你不是在调用
val函数,你只是在引用它,要在dom元素上调用val函数,你必须使用()
标签: javascript jquery textbox character add