Javascript readonly为true时激发TextBox的onchange事件

Javascript readonly为true时激发TextBox的onchange事件,javascript,jquery,html,Javascript,Jquery,Html,我试图有一些功能的文本框,这是只读的变化。 但是,当我尝试使用javascript更新textbox时,不会触发textbox的更改事件 <script type="text/javascript"> $(document).ready(function () { $('input[id$=_txtTest]').bind("change", function () { alert("test");

我试图有一些功能的文本框,这是只读的变化。 但是,当我尝试使用javascript更新textbox时,不会触发textbox的更改事件

<script type="text/javascript">
        $(document).ready(function () {
            $('input[id$=_txtTest]').bind("change", function () {
                alert("test");
            });
                        });
        function ChangeText() {
            $('input[id$=_txtTest]').val('hello');
         }
    </script>

$(文档).ready(函数(){
$('input[id$=\U TXTEST]')。绑定(“更改”,函数(){
警报(“测试”);
});
});
函数ChangeText(){
$('input[id$=\u txtest]').val('hello');
}
我在单击按钮时调用ChangeText方法。但它不会为textbox触发textchange事件

<script type="text/javascript">
        $(document).ready(function () {
            $('input[id$=_txtTest]').bind("change", function () {
                alert("test");
            });
                        });
        function ChangeText() {
            $('input[id$=_txtTest]').val('hello');
         }
    </script>

有人能告诉我这里出了什么问题吗?

更改事件只由真实的用户事件触发,而不是由javascript操作触发

您可以触发更改事件,如下所示:

$('input[id$=_txtTest]').val('hello').change();
你可以这样做

function setValueOfTextBox()
{
    var myElement = document.getElementById("textboxid");
    myElement.value = "hello";
    //following code fire change event for you text box
    if (myElement.onchange) 
         myElement.onchange();
}

你必须这样做:


我相信出于某种安全原因,事件不会被触发。 但您可以通过触发该元素上的特定事件来实现这一点。 例如,
$('input[id$=\u txtest]')。触发器('change')

我希望这对某人有所帮助。

onkeypress
事件或以下事件之一: 因为只读字段实际上没有改变;
onChange
事件不起作用 扣动扳机。然而;有一些你可以听的

下面是一个简短的演示:

输入{
字体大小:16px;
线高:30px;
填充:3倍;
边框:2倍深蓝色立体;
}

函数sayHi(evt){
警报('您正在编辑只读文件吗?单击“确定”以获取详细信息')
警报(JSON.stringify)({
keyCode:evt.keyCode,
charCode:evt.charCode,
altKey:evt.altKey,
ctrlKey:evt.ctrlKey,
移位键:
evt.shiftKey
}),空,2);
}

可能重复:也可以重复:您是否已在输入框上将readonly设置为true?调用ChangeText时,该值是否实际更改为“hello”?是的,它更改为hello,但不会触发任何事件