我创建了这两个相互调用的函数但是 我不明白为什么我不能调用函数ioFunction()。 我能做错什么?
这样我就可以调用函数:
$("[name=flip-4]").change(function() {
var b = $("#flip-2").val();
var c = $("#flip-3").val();
var d = $("#flip-4").val();
if (b == "on" || c == "on" && d == "off") {
var message = 'the roof cant be close when some setups is on.';
dialogFunction(message);
$("#flip-4").val("on");
} else {
var message = 'the roof will be ' + d + ': ' + output + '.';
var flip = 'flip4';
ioFunction(flip,d,message);
}
});
function dialogFunction(param) {
var html = '<div data-role="dialog" id="page2" data-mini="true" data-close-btn="right">';
html += '<div data-role="header"><h1 style="text-align:left; margin-left:10px;">Atention</h1></div>';
html += ' <div role="main" class="ui-content">';
html += ' <legend>' + param +'</legend> ';
html += ' </div>';
html += ' </div>';
$('#page2').remove();
$('body').append(html);
$('#page2').enhanceWithin();
$.mobile.changePage("#page2");
}
function ioFunction(parama,paramb,paramc) {
$.ajax({
url: 'io.php?'+ parama + '=' + paramb,
dataType: 'text',
success: function(output){
var output = $.trim(output);
if (output == "success") {
dialogFunction(paramc);
} else {
dialogFunction('ERROR: ' + output);
}
}
});
}
答案 0 :(得分:1)
我认为问题在于你的if
陈述:
if (b == "on" || c == "on" && d == "off") {
你的意思是:
if ((b == "on" || c == "on") && d == "off") {
或
if (b == "on" || (c == "on" && d == "off")) {
?考虑在您的条件周围加上括号,使其更明确。
我愿意打赌,如果你在console.log
内放置一个断点/ else
或其他内容,你就永远无法达到它。