我正在尝试在jQuery mobile中的两个页面之间传递值。除了无线电以外,我对任何值都没有任何问题。通过下一页的收音机,我得到一个未被捕获的ReferenceError。
这是我的代码的简化版本。
$(document).on('pageinit', '#page1', function(){
$('#validate1').submit(function(){
var inputVal = $('[name=inputVal]').val();
var radioVal = $('#form1 input[type="radio"]:checked').val();
// Also tried this
// var radioVal = $('input[name=radioVal]:checked', '#validate1').val();
console.log(radioVal); // Works
$.mobile.changePage('#page2');
return false;
});
});
$(document).on('pageinit', '#page2', function(){
console.log(inputVal.value); // Works
console.log(radioVal.value); // Uncaught ReferenceError: radioVal is not defined
});
我使用此方法传递数据。
答案 0 :(得分:0)
初始化
var radioVal = "";
在“pageinit”之外(可能在你的JS文件的顶部)
并在pageinit中简单地放
radioVal = $('#form1 input[type="radio"]:checked').val();
通过这种方式,您可以将radioVal视为全局变量,并使其在任何地方都可用。