嗨,我正在尝试实现在这个问题上提出的解决方案: 使用jQuery将文本插入textarea
但是不要紧张.
将一些虚拟文本添加到textarea元素时,此平面函数可以正常工作:
function add_to() {
$('#ad_textarea').val($('#ad_textarea').val()+'test');
}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试将此函数连接到变量时,它会中断:
function add_to(word) {
$('#ad_textarea').val($('#ad_textarea').val()+word);
}
Run Code Online (Sandbox Code Playgroud)
从这行代码调用时:
<?php foreach ($words as $word) {
echo "<li class='$word[0]'><a href='#' onclick='add_to('$word');'>$word</a></li>";
}
?>
Run Code Online (Sandbox Code Playgroud)
我查看了输出的代码,看起来很干净:
<li class='a'><a href='#' onclick='add_to('aardvark');'>aardvark</a></li>
Run Code Online (Sandbox Code Playgroud)
我最终试图让他们在文本区打印出来.谁能发现我的滑倒?
TIA
您需要转义值,或者如果您确定它在字符串本身中没有任何内容,则更改引号,如下所示:
onclick='add_to("$word");'
Run Code Online (Sandbox Code Playgroud)
但是,最好使用不显眼的脚本并同时消除此问题,如下所示:
<li class='a'><a href='#' class='word'>aardvark</a></li>
Run Code Online (Sandbox Code Playgroud)
然后使用这样的脚本:
$(function() {
$("a.word").click(function() {
$('#ad_textarea').val($('#ad_textarea').val()+$(this).text());
});
});
Run Code Online (Sandbox Code Playgroud)
或使用.val()功能:
$(function() {
$("a.word").click(function() {
var t = $(this).text();
$('#ad_textarea').val(function(i, v) { return v + t; });
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |