我正在尝试使用jQuery创建一个多步骤表单。
以下是我的代码:
<div id="div1">
<form>
<label>Username</label><input type="text" id="username"></input>
<label>Password</label><input type="text" id="password"></input>
</form>
<a href="#" class="next">NEXT</a>
</div>
<div id="div2">
<p>Content of Div 2</p>
</div>
我的JS:
function showdiv2(){
$("#div1").hide();
$("#div2").show();
}
function validateuser(){
var username = $("#username").val().length;
if (username >5 && username<20)
errorUser =false;
}
function validatePassword(){
var password = $("#password").val().length;
if (password>8 && password<20)
errorPassword =false;
}
$('.next').click(function(){
var errorUser = false;
var errorPassword = false;
validateuser();
validatePassword();
if(errorUser=false && errorPassword=false){
return=true;
showdiv2();
}
else{
return=false;
}
} );
验证工作正常。但我无法使用函数showdiv2()工作。
我怎样才能做到这一点?这是Div 2中的另一个类似形式,因此我无法使用div1中的提交按钮。
请帮忙。
非常感谢。
答案 0 :(得分:0)
你必须在html中的ur form标签中添加一个动作或方法,以便它将表单信息重定向到你的JS页面.. :))
答案 1 :(得分:0)
<强> DEMO LINK 强>
function showdiv2() {
$("#div1").hide();
$("#div2").show();
}
function validateuser() {
var username = $("#username").val().length;
if (username > 5 && username < 20)
return true;
}
function validatePassword() {
var password = $("#password").val().length;
if (password > 8 && password < 20)
return true;
}
$('.next').click(function() {
var _return = false;
if (!validateuser() && !validatePassword() ) {
showdiv2();
_return = true;
} else {
_return = false;
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1">
<form>
<label>Username</label>
<input type="text" id="username">
<label>Password</label>
<input type="text" id="password">
</form>
<a href="#" class="next">NEXT</a>
</div>
<div id="div2">
<p>Content of Div 2</p>
</div>
&#13;
<input type="text" id="username">
代替<input type="text" id="username"></input>
password.length>8 && password.length<20
代替password length>8 && <20
errorUser==false && errorPassword==false
代替errorUser=false && errorPassword=false
var
在js中定义新变量答案 2 :(得分:0)
您的HTML中存在错误,即无需关闭input
代码</input>
。
$(document).ready(function(){
$(".next").click(function(){
var urnm = $("#username").val().length;
var pwd = $("#password").val().length;
if(urnm >= 5 && urnm<= 20){
if(pwd >= 5 && pwd<= 20){
$("#div2").show();
}
}
else{
$("#div2").hide();
}
});
});
答案 3 :(得分:0)
Uri allSMSes = Uri.parse("content://sms");
String[] strColumns = { TextBasedSmsColumns.ADDRESS,
"MAX(" + TextBasedSmsColumns.DATE + ") as " + TextBasedSmsColumns.DATE,
"COUNT(" + TextBasedSmsColumns.BODY + ") as number",
"SUM(" + TextBasedSmsColumns.READ + ") as " + TextBasedSmsColumns.READ};
Cursor c = getContentResolver().query(allSMSes, strColumns,
"1=1) group by (" + TextBasedSmsColumns.ADDRESS ,null, null);
试试这个经过测试的代码。如果有任何帮助需要评论
答案 4 :(得分:0)
我将变量定义为true并且有效:
var errorUser = true;
var errorPassword = true;