jsp页面验证的问题,我的页面上有radio,textarea等、、求验证不为空,然后提交 给struts处理,JS怎么写?
我是这样写的:但貌似不对呀!functionyanzhen(){varradio_1=document.getElementById('rate_1').value;va...
我是这样写的:但貌似不对呀!
function yanzhen(){
var radio_1= document.getElementById('rate_1').value;
var textarea_1= document.getElementById('neirong').value;
if (radio_1==""){
alert("对不起,请选择好评");
return false;
}
if (textarea_1==""){
alert("对不起,输入内容");
return false;
}
var url="/a/aa.do?aaa=bb";
window.open(url);
} 展开
function yanzhen(){
var radio_1= document.getElementById('rate_1').value;
var textarea_1= document.getElementById('neirong').value;
if (radio_1==""){
alert("对不起,请选择好评");
return false;
}
if (textarea_1==""){
alert("对不起,输入内容");
return false;
}
var url="/a/aa.do?aaa=bb";
window.open(url);
} 展开
3个回答
展开全部
因为你这是自己写得页面代码,所以,具体的不知道有怎样的内容。
我把这些说一下,自己试着注意这个,然后再写写。
首先,既然是radio,那么,就不能光判断是不是值为空了,因为radio只有在被选中的时候值才有意义,所以判断radio的时候,不应该是去通过id得到值(多个radio的时候,没发现是name相同么?页面上面不允许id相同的),而应该是判断radio是否被选中,比如,一个radio的id为radio1,那么,应该是这样:
if(document.getElementById("radio1").checked==true) {
...
}
如果是同一个name下面有多个radio,你应该判断这多个radio里面是不是有一个选中了,这个时候用得方法是:
var objArr = document.getElementsByName(name);
var hasSel = false;
for(var i=0; i<objArr.length; i++) {
if(objArr[i].checked){
hasSel = true;
break;
}
}
if(hasSel==false) {
alert("请选择...");
return false;
}
这是判断radio的方法。
至于学不学Jquery,不用jQuery也能用JS解决问题,Jquery本身就是JS,只不过jQuery更好用,更方便而已。跟能不能解决问题没有关系。我用得就是JQuery。当然,也建议楼主自己有空了看一下,这个确实不错。现在解决问题要紧,这个放后再说。
再者,判断是否为空的时候,可以直接:
if(obj) {
}
或者,更好一些是这样:
if(obj==null||obj=="") {
}
单纯判断obj=="",这样子是不严密的。
先试试看吧。你注意到上面的radio判断方法了,应该问题就能解决了。
天天开心。。。
:)
我把这些说一下,自己试着注意这个,然后再写写。
首先,既然是radio,那么,就不能光判断是不是值为空了,因为radio只有在被选中的时候值才有意义,所以判断radio的时候,不应该是去通过id得到值(多个radio的时候,没发现是name相同么?页面上面不允许id相同的),而应该是判断radio是否被选中,比如,一个radio的id为radio1,那么,应该是这样:
if(document.getElementById("radio1").checked==true) {
...
}
如果是同一个name下面有多个radio,你应该判断这多个radio里面是不是有一个选中了,这个时候用得方法是:
var objArr = document.getElementsByName(name);
var hasSel = false;
for(var i=0; i<objArr.length; i++) {
if(objArr[i].checked){
hasSel = true;
break;
}
}
if(hasSel==false) {
alert("请选择...");
return false;
}
这是判断radio的方法。
至于学不学Jquery,不用jQuery也能用JS解决问题,Jquery本身就是JS,只不过jQuery更好用,更方便而已。跟能不能解决问题没有关系。我用得就是JQuery。当然,也建议楼主自己有空了看一下,这个确实不错。现在解决问题要紧,这个放后再说。
再者,判断是否为空的时候,可以直接:
if(obj) {
}
或者,更好一些是这样:
if(obj==null||obj=="") {
}
单纯判断obj=="",这样子是不严密的。
先试试看吧。你注意到上面的radio判断方法了,应该问题就能解决了。
天天开心。。。
:)
展开全部
form的action里面加上/a/aa.do,这样会直接把请求提交给你的action,不需要自己手动打开url
在form中加上onsubmit="return yanzhen()" ,用来做提交时验证
单选按钮的验证用楼上的就可以了
另外,推荐你有时间看下jquery
在form中加上onsubmit="return yanzhen()" ,用来做提交时验证
单选按钮的验证用楼上的就可以了
另外,推荐你有时间看下jquery
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//单选按钮
var radio_1= document.getElementById('rate_1').checked;
if(!radio_1) 或 if(radio_1==false)
{
alert("请选择好评");
return false;
}
//文本验证是对的
//
最后验证通过要加上 return true;
Form里加上事件:onsubmit="return yanzhen()"
var radio_1= document.getElementById('rate_1').checked;
if(!radio_1) 或 if(radio_1==false)
{
alert("请选择好评");
return false;
}
//文本验证是对的
//
最后验证通过要加上 return true;
Form里加上事件:onsubmit="return yanzhen()"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询