【发布时间】:2016-09-19 10:13:27
【问题描述】:
我是 Javascript 的初学者。我目前正在使用它开发一个 Phonegap 应用程序。我被困在两者之间,因为我有 4 个用于注册过程的 html 页面,并且我必须将所有 html 页面输入值传递给单个 js 文件,因为最终所有数据都必须发布到服务器 URL,而且我已经在许多网站上阅读过他们建议对您网站的所有页面使用相同的 js 文件以加快网站速度。所以我有两个问题要解决。我搜索了许多网站,但找不到准确的答案。
我需要将 4 个 html 页面的输入值传递给单个 js 文件。
我必须为登录和注册制作单个 js 文件。
我的JS页面代码是:
var firstName="";
var lastName="";
var email="";
var password="";
var retypePassword="";
var gender="";
var DOB="";
var institute="";
var course="";
var branch="";
var semester="";
var teachers = [];
function signUpStarting() {
alert(firstName + " "+lastName+" "+email+" "+password+" "+retypePassword+" "+gender+" "+DOB+" "+institute+" "+course+" "+branch+" "+semester+" "+teachers.join(","));
}
function signUp1() {
firstName[0] = $("#first_name").val().trim();
firstName[1] = $("#last_name").val().trim();
email = $("#email").val().trim();
password = $("#password").val();
retypePassword = $("#retype_password").val();
alert(firstName + " "+lastName+" "+email+" "+password+" "+retypePassword);
}
function signUp2() {
gender = $('#gender').find(":selected").text();
DOB = $('#DOB').val();
alert(gender+" "+DOB);
}
function signUp3() {
institute = $('#institute').find(":selected").text();
course = $('#course').find(":selected").text();
branch = $('#branch').find(":selected").text();
semester = $('#semester').find(":selected").text();
alert(institute+" "+course+" "+branch+" "+semester);
}
function signUp4() {
$(":checkbox" ).map(function() {
if($(this).is(':checked')){
teachers.push($('label[for="' + this.id + '"]').text());
}
});
signUpStarting();
}
在 html 页面中,我为每个页面调用 JS 函数:
在第一页:
<a onclick="signUp1()" href="register-two.html">continue</a>
在第二页:
<a onclick="signUp2()" href="register-three.html">continue</a>
在第三页:
<a onclick="signUp3()" href="register-four.html">continue</a>
在第四页:
<a onclick="signUp4()">continue</a>
在从一页到下一页的每笔交易中,我都在 JS 中设置了警报,并且我也收到了准确值的警报。但是在点击html第四页的继续按钮后,我将代码转移到主注册功能。我试图在 signUpStarting() 函数中看到警报,但我只得到了第四页值的响应,而其他值没有显示任何内容,因为变量为空。
我不知道如何在不使用 localStorage 或 cookie 并将所有数据发布到服务器的情况下始终保存变量值。而且我认为如果我知道将我网站的所有 html 页面编码为单个 JS,这会更容易文件。
请帮帮我!
【问题讨论】:
-
如果你在页面之间移动,我会做这个服务器端,否则我会加载使用 ajax 的下一步
-
ajax变量在转移到不同页面时不删除不改变?
-
如果您使用 ajax,您实际上不会更改页面 - ajax 会加载新内容,而无需移出当前页面。阅读以下内容:stackoverflow.com/questions/1510011/how-does-ajax-work
标签: javascript jquery html cordova