Javascript 触发文本框中文本的更改

Javascript 触发文本框中文本的更改,javascript,jquery,events,textbox,Javascript,Jquery,Events,Textbox,我无法在当前场景中触发文本的更改 如果我点击按钮,我正在更改文本的内容。那么,如何触发由外部事件引起的文本更改呢。 例如,点击一个按钮,我就可以在文本框中填充任何文本,可以粘贴文本,还可以使用鼠标和键盘。在这些场景和类似场景中,我也希望触发事件 我已经尝试了以下方法 $('#text_id').on('change', function () { alert('This is not trigged when i changed the text'); }); 文本更改时,应发出警报。

我无法在当前场景中触发文本的更改

如果我点击按钮,我正在更改文本的内容。那么,如何触发由外部事件引起的文本更改呢。 例如,点击一个按钮,我就可以在文本框中填充任何文本,可以粘贴文本,还可以使用鼠标和键盘。在这些场景和类似场景中,我也希望触发事件

我已经尝试了以下方法

$('#text_id').on('change', function () {
    alert('This is not trigged when i changed the text');
});
文本更改时,应发出警报。可能有许多可能的来源来更改文本

这是我创建的

提前谢谢

这是我最新的

最新的小提琴-

原稿中的问题-

代码必须在$document.ready中 后置功能缺失 在上不正确使用$。有关详细信息,请参阅 根据提问者的评论进行编辑-

更新小提琴-

更多基于评论的编辑线程-

从但对于其他元素类型,事件被延迟,直到元素失去焦点


因为,当通过单击按钮进行更改时,文本框没有聚焦,所以触发器不会自动发生。

我在JSFIDLE中看到了您的代码。你遗漏了一些括号和分号。否则,您的代码将被写入。请检查jquery库代码

$('#button_id').on('click',function()
               {
                   $('#text_id').val('TExt changed');
               }
              );
$'text_id'。在'change'上,函数{alert'在我更改文本时不会触发此事件';
} ;

试试下面的代码。但为此,您应该使用jQuery。无论文本何时更改,它都会引发事件

$('#text_id').on('input propertychange paste', function() {
    alert('Text Changed');
});

工作小提琴是

这一事件肯定是由文本更改引起的。如果这对你没有用,肯定会有其他人为此感到高兴

var txtVal = '';
setInterval(function() {
    if ($("#text_id").val() != txtVal) {
        txtVal = $("#text_id").val();
        alert("Text Changed");
    }
}, 10);

工作提琴是

很抱歉,您的提琴没有触发文本的更改。你能帮我查一下吗。。。你是换了小提琴还是用了我给你的链接?因为你的小提琴没有添加JQuery库。@user3354774,那个链接对我和索姆纳特都有用。检查您的浏览器控制台,如果您看到任何错误,请通知我们。@HarshMoorjani您正在以$'text\u id'.val'text changed'.change手动触发。当文本中的文本发生更改时,警报自然出现box@user3354774,在框中键入任何内容,然后移出框。会的。但是当你通过js编辑if时,你需要触发它。@SomnathKharat你能告诉我我在fiddle中犯了什么错误吗?首先在你的fiddle中选择库代码。如果我点击按钮更改文本内容,请将功能置于括号中。那么,如何触发由外部事件引起的文本更改呢。不只是通过任何方式点击按钮,就可以显示此代码$'text_id'。val'text changed';在textid on change FUNCTION上,当文本被其他事件而不是在keyup上更改时,必须发出警报。。。就像点击按钮一样,文本被更改,这是一个例子。@user3354774这些是所有答案中描述的文本更改事件的基本内容。如果你想实现一个特定的逻辑,你必须用你的大脑通过这些基本思想来表达出来。@user3354774我可以,但看起来您根本没有采取任何措施。@user3354774查看我的更新答案和工作提示。如果我在按钮中添加了一些事件并更改了单击时的文本,则不会发出我从中获取此代码段的警报,情况如何。这是一个很好的回答。请你参考一下。
$('#text_id').on('input propertychange paste', function() {
    alert('Text Changed');
});
var txtVal = '';
setInterval(function() {
    if ($("#text_id").val() != txtVal) {
        txtVal = $("#text_id").val();
        alert("Text Changed");
    }
}, 10);