Javascript 未捕获引用错误:未定义RegisterUserAcc
我在网上搜索了这个错误,并尝试了我读到的每一条建议,但我的情况似乎有所不同 我正在用intel xdk开发一个跨平台的应用程序,应用程序框架3 我在按钮onclick事件上得到“uncaughtreferenceerror:RegisterUserAcc未定义” html5代码简介:Javascript 未捕获引用错误:未定义RegisterUserAcc,javascript,html,Javascript,Html,我在网上搜索了这个错误,并尝试了我读到的每一条建议,但我的情况似乎有所不同 我正在用intel xdk开发一个跨平台的应用程序,应用程序框架3 我在按钮onclick事件上得到“uncaughtreferenceerror:RegisterUserAcc未定义” html5代码简介: <div class="col uib_col_2 col-0_4-12" data-uib="layout/col" data-ver="0">
<div class="col uib_col_2 col-0_4-12" data-uib="layout/col" data-ver="0">
<div class="widget-container content-area vertical-col">
<div class="table-thing with-label widget uib_w_40 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" type="text" id="acode" value="27">
</div>
<span class="uib_shim"></span>
</div>
</div>
<div class="col uib_col_3 col-0_8-12" data-uib="layout/col" data-ver="0">
<div class="widget-container content-area vertical-col">
<div class="table-thing with-label widget uib_w_13 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" placeholder="Cell Number" type="text" id="regcell">
</div><span class="uib_shim"></span>
</div>
</div>
<span class="uib_shim"></span>
</div>
<div class="table-thing with-label widget uib_w_14 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" placeholder="Email (e.g. someone@yrdomain.com)"" type="text" id="regemail">
</div>
<div class="table-thing with-label widget uib_w_15 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" placeholder="Username" type="text" id="regusername">
</div>
<div class="table-thing with-label widget uib_w_16 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" placeholder="Password" type="password" id="regpassword">
</div>
<div class="table-thing with-label widget uib_w_17 d-margins" data-uib="app_framework/input" data-ver="2">
<input class="wide-control" placeholder="Confirm Password" type="password" id="regconfirm">
</div><a class="button widget uib_w_18 d-margins" data-uib="app_framework/button" data-ver="2" onclick="RegisterUserAcc()" id="uib_w_18">Create Account</a>
</div>
您在第8行有一个输入错误:data:Username:usernames
它应该是data:{Username:usernames},或者类似的东西脚本中的一个括号没有关闭,关闭它修复了问题。感谢您的输入,他们帮助我修复了代码中的其他错误。控制台中没有其他错误吗?LookUpUsers()
中有语法错误。修复此问题并重新测试。看在上帝的份上,请格式化您的代码。此错误意味着未定义RegisterUserAcc。因为你的代码格式很差,所以很难说出来,但它可能在另一个函数中?JS将无法“查看”内部嵌套函数。@nnnnnn,我已修复了它,但错误仍然存在。我还意识到我以前使用过的其他函数现在也出现了同样的错误。@torazaburo,该函数不在另一个函数中,并且我在脚本中的任何位置都没有(document).ready(function()。可能发生了一些事,因为即使是同一脚本中的其他函数也不再工作。另外,请检查您的reguser=“”,regpass==null条件,逗号运算符仅返回最后一个表达式,它不是| |或”。
function validateEmail(email) {
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
};
function LookUpUsers(usernames){
$.ajax({
type: "GET",
data: Username:usernames,
url: "http://localhost:55288/ServiceAPIServer.svc/LookupUser",
contentType: "application/json; charset=utf-8",
dataType: "json",
processdata: true,
success: function(nuser) {
if(nuser=="" || nuser==null){return true;}else{return false;}
},
});
};
function RegisterUserAcc(){
var reguser=document.getElementById("regusername").value;
alert("lookup user")
var UsernameAvailable =LookUpUsers(reguser);
alert("lookup user succeded, now analising data")
if (UsernameAvailable==false){alert("Username not available, try another one."); return false;}
var regpass=document.getElementById("regpassword").value;
var regconfirms=document.getElementById("regconfirm").value;
var regemails=document.getElementById("regemail").value;
var regcel=document.getElementById("regcell").value;
var reglat
var reglon
var reggetLocation = function()
{
var regsuc = function(regp){
alert("geolocation success");
if (regp.coords.latitude != undefined)
{
reglat = regp.coords.latitude;
reglon = regp.coords.longitude;
}
};
var regfail = function(){
alert("geolocation failed");
reggetLocation();
};
intel.xdk.geolocation.getCurrentPosition(regsuc,regfail);
}
var regdc= new Date();
var regimei=intel.xdk.device.uuid;
var regip
var regll=regdc;
var reglocd=regdc;
$.ajax({
type: "GET",
url: "http://localhost:55288/ServiceAPIServer.svc/GetRequestIp",
contentType: "application/json; charset=utf-8",
dataType: "json",
processdata: true,
success: function(regmyip) {
regip=regmyip;
},
});
if (reguser==null || reguser=="",regpass==null || regpass=="",regconfirms==null || regconfirms=="",regemails==null || regemails=="",regcel==null || regcel==""){
alert("All fields are compulsory");
return false;} else {
if(regconfirms!=regpass){alert("Passwords do no match");
return false;}
}
if (validateEmail(regemails)){}else{alert("Invalid e-mail address"); return false;}
if (regpass.length<6){alert("Password must be 6 characters or more"); return false;}
$.ajax({
type: "POST",
url: "http://localhost:55288/ServiceAPIServer.svc/CreateUser",
data: JSON.stringify({Cell:regcel,DateCreated:regdc,Email:regemails,IMEI1:regimei,Ip1:regip,LastLogin:regll,Lat1:reglat,Loc1Date:reglocd,Lon1:reglon,Password:regpass,Username:reguser}),
contentType: "application/json; charset=utf-8",
dataType: "json",
processdata: true,
success: function() {
intel.xdk.cache.setCookie("UserId",reguser,366)
activate_page("#Ad");
},
});
}