我在HTML中有一个select元素,然后有一个显示PDF的iframe。我有一些jquery代码,当用户选择一个选项时,应该更改iframe的“ src”属性,但到目前为止,我似乎无法触发它。当我从选择中单击一个选项时,没有任何反应。我曾尝试使用.change()和.on(“ change”),但它们不起作用。我在函数中有console.log,但是它没有任何内容登录到控制台。
jquery
$(document).ready(function(){
var x = $("#demo-category").val();
$("#demo-category").on("change", "#demo-category", function(){
$("#readframe").attr("src", x);
console.log(x);
console.log("test");
});
});
如果您需要更多信息,我会提供。
答案 0 :(得分:1)
事件委托(即您的
.on("change", "#demo-category", function(){
)用于触发事件的元素与添加侦听器的元素不同。当您要将纯侦听器添加到单个元素时,请勿传递其他选择器-如果这样做,则不会触发该侦听器。而是只需致电.on('change', fn...
。
此外,您正在加载x
的文档。 #demo-category
更改后,检索新值
$(document).ready(function() {
$("#demo-category").on("change", function() {
var x = $(this).val();
$("#readframe").attr("src", x);
console.log(x);
console.log("test");
});
});
答案 1 :(得分:1)
我认为这会起作用
$(document).ready(function(){
$("#demo-category").on("change", function(){
$("#readframe").attr("src", $(this).val());
});
});