我似乎有一个非常基本的问题。我正在尝试将选定框中的选定值添加到文本区域。我还需要用户能够在文本区域添加额外的内容。
例如,他们选择一个选项 - >然后将其添加到选择框 - >用户可以输入额外信息 - >然后从选择框中选择另一个项目,该项目会在用户添加的文本后添加。我遇到的问题是,一旦我将文本添加到textarea,当你选择一个项目时它就不再被添加了。
这是我的代码:
<p>
<select name="selectfield" id="selectfield">
<option value="" selected>- Select -</option>
<option value="Apples/">Apples/</option>
<option value="Oranges/">Oranges/</option>
<option value="Plums/">Plums/</option>
</select>
</p>
<textarea style="width:100%" name="info" id="info" cols="20" rows="5"></textarea>
$("#selectfield").on("change", function(){
var info = $("#selectfield").val();
$("#info").append(info);
});
我希望能够拥有的textarea中的示例文本是:
Oranges/200Plums/10 etc.
答案 0 :(得分:0)
您不能以您尝试的方式append()
到textarea
。相反,您可以向val()
提供一个函数,将select
的所选值添加到当前设置。试试这个:
$("#selectfield").on("change", function() {
var $select = $(this);
$("#info").val(function(i, val) {
return val += $select.val();
})
});
我会注意到,这种模式不是非常用户友好,很容易被用户意外删除所选的选择值。我认为你可能最好用每个项目列出自己的输入字段,以供用户修改。