我正在寻找一种获取Html.TextAreaFor输入的方法,但我无法找到解决方案。
我尝试了几个选项,第一个是更改功能,只有在退出后才能工作,第二个包含一个有两个缺点的按键事件:首先它在键入文本之前触发,第二个如果有人粘贴一些输入它不行。
在更改@Html.TextAreaFor(model => model.Text, 10, 50, null)
的文字后,您是否知道如何获得确切的输入?
这是目前的尝试:
$('#Text').on('keyup paste input', function () {
var value = $(this).val();
alert(value);
});
使用:
<div class="editor-label">
@Html.LabelFor(model => model.Text)
</div>
<div class="editor-field">
@Html.TextAreaFor(model => model.Text, 10, 50, null)
@Html.ValidationMessageFor(model => model.Text)
</div>
我也尝试定义一个id,但仍然没有反应
答案 0 :(得分:0)
您可以尝试使用计时器,并在值更改时进行测试。如下所示:
(function($){
$(document).ready(function(){
var value = $('#Text').val();
setInterval
(
function()
{
if($('#Text').val() == value)
{
//do something
}
else
{
var newValue = $('#Text').val();
value = newValue;
}
},
1000
)
})
})(jQuery);
这样做的缺点是timeout
将在页面持续时间内每秒运行一次。所以一定要找到一种方法,在你得到你需要的东西时清除超时。