如何在 jQuery 小部件中使用动态属性值
How to use a dynamic property value in a jQuery widget
我有一个javascript,每当我从下拉菜单中选择一个选项时,它都会返回一个值。
$(document).ready(function() {
function calculateVals() {
//dropdown menus
var valuestart = $("select[name='timestart']").val();
var valuestop = $("select[name='timestop']").val();
//create date format
var timeStart = new Date("01/01/2007 " + valuestart).getHours();
var timeEnd = new Date("01/01/2007 " + valuestop).getHours();
var hourDiff = timeEnd - timeStart;
return hourDiff;
}
$("select").change(calculateVals);
calculateVals();
});
上面的脚本返回一个数字,我需要将其添加到下面的 jquery 插件中。我需要将其添加到max
选项中,但calculateVal is not defined
出现错误。
$(function(){
$("#slider").slider({
range: "min",
value: 8,
min: 1,
max: calculateVals(), //my attempt
step: 1,
slide: function(event, ui) {
$("#amount").text(ui.value);
},
stop: function(event, ui) {
$("#notifications").val(ui.value);
}
});
$("#notifications").val( $("#slider").slider("value") );
});
将函数移动到全局范围:
function calculateVals() {
//code here...
return someResult;
}
$(document).ready(function() {
$("select").change(calculateVals);
calculateVals();
});
更好的是,了解 DOM ready 意味着什么,因为你滥用它。
- 您应该只有一个就绪处理程序。
- 只有与 DOM 元素相关的代码才应该存在。
更新:
您可以稍后通过以下方式更改滑块最大值:
$( "#slider").slider("option", "max", calculateVals());
尝试在就绪块的一侧定义function
:
function calculateVals() {
//code here...
return someResult;
}
$(document).ready(function() {
$("select").change(calculateVals);
calculateVals();
});
相关文章:
- Google Closure Advanced |无法识别对象属性|动态属性
- 如何从动态属性将IMG插入DOM
- 将动态属性添加到对象末尾
- 将动态属性从 ADF 传递到 JavaScript
- 动态属性名称串联
- 具有角度的动态属性
- 在挖空JS中从ATTR调用模型函数以获取动态属性
- 按动态属性值选择聚合物元素
- 对象中的动态属性名称
- 拖放区将动态属性追加到 #dz 删除
- 如何在 jQuery 小部件中使用动态属性值
- 在 Jquery/Javascript 中访问动态属性名称
- 创建具有动态属性的对象数组
- 如何在车把/Ember.js中插入动态{{属性}}
- 如何使用动态属性访问对象
- 动态属性对象 - JSON
- 角度控制器的动态属性
- 将动态属性名称添加到选择中
- JavaScript:如何迭代一个对象的属性,并针对另一对象的动态属性进行测试
- 表单动态属性更改和提交不起作用