我有两个文本框。页面加载时,第一个文本框的值将应用于第二个文本框。
我需要在页面加载时触发更改事件。
HTML:
a: <input type="text" id="a" value="x" />
b: <input type="text" id="b" value="y" />
JQuery的:
// Apply value of #a to #b and fire change event...
$('#b').val($('#a').val()).change();
// Listen for the change and alert...
$('#b').on('change', function() {
alert("Change event fired on load.");
});
的jsfiddle:
为方便起见:http://jsfiddle.net/clarusdignus/rHYLM/
更改事件未触发。
答案 0 :(得分:1)
您应触发更改事件。所以......
$('#b').val($('#a').val()).trigger('change');
此外,您需要告诉JavaScript在文档加载(准备好)之后执行这些行。这可以在你的代码中包装:
$(function(){/ *你的代码* /});
这是一个简化版本:
$(document).ready(function(){...});
答案 1 :(得分:1)
事件处理程序在代码
触发事件后附加首先应该是
// Listen for the change and alert...
$('#b').on('change', function() {
alert("Change event fired on load.");
});
// Apply value of #a to #b and fire change event...
$('#b').val($('#a').val()).change();
第二个应该是
// Listen for the change and alert...
$('#b').on('change', function() {
alert("Change event fired on load.");
});
// Apply value of #a to #b and fire change event...
$('#b').val($('#a').val()).trigger('change');