每当我从下拉菜单中选择一个选项时,我都会返回一个值。
$(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") );
});
答案 0 :(得分:2)
尝试在就绪块中定义function
:
function calculateVals() {
//code here...
return someResult;
}
$(document).ready(function() {
$("select").change(calculateVals);
calculateVals();
});
答案 1 :(得分:2)
将函数移动到全局范围:
function calculateVals() {
//code here...
return someResult;
}
$(document).ready(function() {
$("select").change(calculateVals);
calculateVals();
});
甚至更好,了解DOM准备就意味着什么,因为你滥用它。
<强>更新强>
稍后您可以使用以下命令更改滑块max:
$( "#slider").slider("option", "max", calculateVals());