mus*_*ale 3 html javascript css jquery dom
我正在尝试使用jquery在textarea的末尾附加文本.
我的HTML代码如下所示:
<textarea class='form-control' placeholder="Write something..." id="message" name="message" size='20'></textarea>
<fieldset class="form-group">
<div class="checkbox">
<label for="deptList">
<label for="departments" id="deptList">Select a department
<small>use this in case you've set up your account to <a
href="#"> include a department</a> at the end
of the text
</small>
</label>
<input type="checkbox" value="" class="checkbox-inline" id="deptCheck">
<select class="form-control" id="departments">
<option>Dept. 1</option>
<option>Dept. 2</option>
<option>Dept. 3</option>
<option>Dept. 4</option>
<option>Dept. 5</option>
<option>Dept. 6</option>
<option>Dept. 7</option>
</select>
</label>
</div>
</fieldset>
Run Code Online (Sandbox Code Playgroud)
和我附加文本的脚本是:
$('#deptCheck').click(function() {
var theMessage = $("#message").text();
var theDepartment = $("#departments").find(":selected").text();
if ($(this).is(":checked")) {
console.log(theMessage + theDepartment);
$("#message").val(theMessage + theDepartment);
}else {
alert('you have included department in your text, please remove it to avoid extra charges');
}
});
Run Code Online (Sandbox Code Playgroud)
到目前为止: - 我可以添加下拉选项的值到文本区域但是当我添加它时,它会清除所有现有文本.
我想要实现的是用户在文本区域中键入一些文本,然后用户从文本区域下方的下拉列表中选择一个选项,然后在文本中键入文本的末尾添加下拉列表的文本区域.我尝试过在线资料,但我似乎没有把它弄好.我哪里错了?
这是一个链接到相同的JS小提琴的小提琴
要获得text
内部,textarea
你必须使用该val()
功能:
$("#message").val();
$('#deptCheck').click(function() {
var theMessage = $("#message").val();
var theDepartment = $("#departments").find(":selected").text();
if ($(this).is(":checked")) {
console.log(theMessage + theDepartment);
$("#message").val(theMessage + theDepartment);
} else {
alert('you have included department in your text, please remove it to avoid extra charges') //disable input
}
});
Run Code Online (Sandbox Code Playgroud)
演示:https://jsfiddle.net/h2dp1oqu/8/