我目前正在尝试构建一个 jquery 移动应用程序。我有一个指向结果页面的表单,我附加了一个函数,该函数可以提取一些 json 并根据提交的表单计算一些数字。我的问题是,当显示结果页面时,它不会显示实际的计算结果,直到您刷新页面。
我对为什么会发生这种情况进行了一些研究,发现它归结为 JQM 通过 ajax 加载页面。当我将 data-ajax="false" 添加到表单时,结果页面工作正常但是我真的想使用 jqm 在结果页面上提供的过渡效果,因为它要么没有效果,但表格有效,要么效果和表格确实有效,肯定有办法做到这一点吗?
结果页面形式:
<form action="results.html" method="get" id="calculator" data-ajax="true" data-transition="flip">
然后在结束正文标记之前的结果页面上,我调用此脚本:
$('#resultsPage').live('pageinit', function(event) {
getFigures();
});
function getFigures() {
var propertyValue = getUrlVars()["propertyValue"];
var quoteType = getUrlVars()["quoteType"];
console.log(propertyValue);
console.log(quoteType);
$.getJSON(serviceURL + 'calculator.php?value=' + propertyValue, function(data) {
figures = data.figures;
$.each(figures, function(key, val) {
//console.log(figure);
//console.log('Key: ' + key + ' Val: ' + val);
if (quoteType == 'buying') {
if (key == 'total') {
$('#tfoot').append('<tr><th scope="row">' + key + ' </th><td><strong>£' + val + '</strong></td></tr>');
} else if (key != 'value') {
$('#tbody').append('<tr><th scope="row">' + key + ' </th><td>£' + val + '</td></tr>');
}
} else {
if (key == 'total') { // Total is wrong need to filter results from server for quoteType
$('#tfoot').append('<tr><th scope="row">' + key + ' </th><td><strong>£' + val + '</strong></td></tr>');
} else if (key != 'completion' && key != 'coal' && key != 'local' && key != 'landRegistry' && key != 'stampDuty') {
$('#tbody').append('<tr><th scope="row">' + key + ' </th><td>£' + val + '</td></tr>');
}
}
});
$('#value').append('£' + data.figures.value);
});
//$('#figureList').listview('refresh');
}
有谁知道我如何使用过渡效果并且仍然有工作形式?