[英]The function to change the content of DIV with jQuery and Javascript is not working
[英]Jquery .change function is not working through javascript
当我通过Javascript更改值时,jquery中的.change调用不起作用。
例如:
$(document).ready(function () {
$(function () {
$("select#product").change(function () {
if (document.all("fatcaSearchDO.bankId").disabled.value = true) {
fnFieldEnableClass(document.all("fatcaSearchDO.bankId"));
}
$.ajax({
type: 'GET',
url: 'ViewHistoryDataAction.do',
data: {
product: $(this).val()
},
dataType: 'JSON',
cache: false,
success: function (j) {
var options = '';
for (var k = 0; k < j.length; k++) {
options += '<option value="' + j[k] + '">' + j[k] + '</option>';
}
$("select#BankID").html(options);
}
});
});
});
});
<html:select name="ViewHistoryForm" property="fatcaSearchDO.bankId" styleClass="login-textbox" onchange="fnGlobalChange();" onclick="checkRadio('1')" onfocus = "checkRadio('1')" styleId="BankID" style="width=250">
<html:select name="ViewHistoryForm" property="fatcaSearchDO.product" styleClass="login-textbox" onchange="fnGlobalChange();" onclick="checkRadio('1')" onfocus = "checkRadio('1')" styleId="product" style="width=250">
在这里,当我尝试更改“产品”的下拉菜单时,将填充其调用操作以及相应的银行ID值。 现在,例如,当我尝试通过javascript更改“产品”的值时
<input type="button" onclick="changeProd()">
function changeProd(){
document.all("fatcaSearchDO.product").value='CC';
}
更改功能不起作用。
当您通过javascript更改输入字段的值时,将不会触发change事件。
您需要手动触发更改事件
喜欢
$("#fatcaSearchDO.product").trigger('change')
例如:
function changeProd(){
$("#fatcaSearchDO.product").val('CC').trigger('change');
}
$(document).ready(function() {
// Handler for .ready() called.
});
相当于调用:
$(function() {
// Handler for .ready() called.
});
请使用其中一个。
为什么不将change
内的匿名函数变成单独定义的函数,因此您可以像这样进行操作:
function changeHandler(element) {
// code code code
value = element.val();
}
$(something).change(function() {
changeHandler($(this));
});
// then when changing value with JS
var element = ... // select the element with javascript here
element.value='CC';
changeHandler($(element)); // just call the function everytime the value gets changed
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.