我有这段代码:
$("#textarea_id").on('input', function(e){
alert('the value of textarea changed');
});
$("#bold").on('click', function(e){ $("#textarea_id").val('bold'); });
$("#italic").on('click', function(e){ $("#textarea_id").val('italic'); });
$("#underline").on('click', function(e){ $("#textarea_id").val('underline'); });
$("#center").on('click', function(e){ $("#textarea_id").val('center'); });
$("#leftside").on('click', function(e){ $("#textarea_id").val('leftside'); });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id = "textarea_id"></textarea>
<br>
<button id = "bold">B</button>
<button id = "italic">I</button>
<button id = "underline">U</button>
<button id = "center">C</button>
<button id = "leftside">L</button>
&#13;
目前,我正在使用input
事件来检测该textarea更改的值。但是你看,它并没有奏效。我的意思是当我点击每个按钮时,我都没有看到此警报'the value of textarea changed'
。
我可以通过在这些内容中添加.change()
来实现这一目标:
$("#textarea_id").val('bold').change();
$("#textarea_id").val('bold').change();
.
.
.
但这不是我要找的东西。我需要一个基于 textarea 上的更改的事件。所以我想在这里举办一个活动:
$("#textarea_id").on(' /* event here */ ', function(e){
是否有任何事件比.val()
更改textarea的值更敏感?
答案 0 :(得分:1)
这是我的解决方案:
class MyActualViewController: MyViewContollerSuperclass {
@IBACTION func ~~~ {
self.back()
}
}
$(document).ready(function(){
$("#textarea_id").on('input change', function(e) {
alert('the value of textarea changed');
});
$(".myButton").click(function(){
var elementValue = $(this).attr("id");
$("#textarea_id").val(elementValue).trigger("change");
});
});