【发布时间】:2018-12-05 05:47:37
【问题描述】:
嗨,我有一个这样的下拉菜单,我有一个 textarea 字段。我希望在使用下拉列表中的选项时,下拉选择的值将附加在文本区域字段中,并且我已经为下拉列表使用了更改事件,但问题是当我再次选择相同的值时,更改事件是不开火。我已经搜索过,很多人建议使用下拉菜单的点击事件,但是当我使用点击事件时,我选择的测试会出现两次,但我只希望出现下拉菜单的选定文本。我的 JS 代码就像这个。
<select class="form-control" id="drpLinkType">
<option value="2" selected="selected">Post</option>
<option value="2">Pre</option>
<option value="2">Test</option>
</select>
$('#drpLinkType').click(function () {
debugger;
var $txt = $("#txt");
var caretPos = $txt[0].selectionStart;
var textAreaTxt = $txt.val();
var txtToAdd = $('#drpLinkType :selected').text();
$txt.val(textAreaTxt.substring(0, caretPos) + txtToAdd + textAreaTxt.substring(caretPos));
})
jsfiddle.net/w0c9o7ox 创建 js 小提琴。在这里您可以看到,如果我单击相同的选项,则它不起作用
【问题讨论】:
-
请点击
<>并创建minimal reproducible example -
你能创建一个工作的jsfiddle
-
也许用
.change()代替.click():api.jquery.com/change -
jsfiddle.net/w0c9o7ox 创建 js 小提琴。在这里您可以看到,如果我单击相同的选项,则它不起作用
标签: javascript jquery