Jquery 移动动态创建的范围更改事件未触发
Jquery Mobile dynamic created range change event not firing
我正在使用此代码创建一个 Jquery 移动范围动态:
$('<input data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
现在我想用这段代码添加一个更改事件:
$(".brightness").change(function() {
alert("changed");
});
我不知道为什么它不起作用,我尝试在定义事件后刷新范围,我尝试将事件绑定到范围,但没有任何效果。包含第一个代码片段的函数首先被调用,包含第二个代码片段的函数被第二个调用。
你们有人知道我做错了什么,或者我忽略了什么吗?
对动态创建的元素使用 on 方法
$(".brightness").on('change',function() {
alert("changed");
});
你需要做两件事
1. 将 css class brightness
添加到您的范围输入
$('<input class="brightness" data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
- 使用
on
添加事件处理程序
$(document).on("change",".brightness",function() {
alert("changed");
});
EDIT - 对于 id 选择器使用 #
而不是像下面这样的 .
(dot)
$(document).on("change","#brightness",function() {
alert("changed");
});
我认为您正在通过 Class 使用点 (.) 提供 id 亮度和调用 Onchange 事件。
如果id的名字是brightness那么
你应该使用#
$("#brightness").on('change',function() {
alert("changed");
});
但是如果您只想通过 class 调用 onchange
事件,那么您需要在输入中添加 class 并使用点 (.)
$('<input class="brightness" data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
$(".brightness").on('change',function() {
alert("changed");
});
我正在使用此代码创建一个 Jquery 移动范围动态:
$('<input data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
现在我想用这段代码添加一个更改事件:
$(".brightness").change(function() {
alert("changed");
});
我不知道为什么它不起作用,我尝试在定义事件后刷新范围,我尝试将事件绑定到范围,但没有任何效果。包含第一个代码片段的函数首先被调用,包含第二个代码片段的函数被第二个调用。
你们有人知道我做错了什么,或者我忽略了什么吗?
对动态创建的元素使用 on 方法
$(".brightness").on('change',function() {
alert("changed");
});
你需要做两件事
1. 将 css class brightness
添加到您的范围输入
$('<input class="brightness" data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
- 使用
on
添加事件处理程序
$(document).on("change",".brightness",function() {
alert("changed");
});
EDIT - 对于 id 选择器使用 #
而不是像下面这样的 .
(dot)
$(document).on("change","#brightness",function() {
alert("changed");
});
我认为您正在通过 Class 使用点 (.) 提供 id 亮度和调用 Onchange 事件。
如果id的名字是brightness那么 你应该使用#
$("#brightness").on('change',function() {
alert("changed");
});
但是如果您只想通过 class 调用 onchange
事件,那么您需要在输入中添加 class 并使用点 (.)
$('<input class="brightness" data-type="' + elementType + '" id="' + name +' " min=' + value1 +' max=' + value2 + ' value="127" >').appendTo("fieldset");
$(".brightness").on('change',function() {
alert("changed");
});