前台如何利用JS或者JQuery使当前面的checkbox被选中后,后面的文本框不得为空。
<s:iteratorvalue="#request.onekindgoodslist"><divclass="checkbox"><label><inputtype="...
<s:iterator value="#request.onekindgoodslist">
<div class="checkbox">
<label>
<input type="checkbox" id="sku" name="sku" value="${sku }" >
数量:<input type="text" id="quantity" name="quantity" >
</label>
</div>
</s:iterator>
毕业设计疑问
前台高手看这里::这是一个用struts标签做的一个循环输出, 前面是 checkbox 后面都对应一个input text。
我想要的是,如果勾选了前面的checkbox ,则后面的文本框不得为空, 否则form 就不能提交,(希望出现提示,或者提交form的时候出现提示)。。。 因为我是初学者,对前台的都不太懂,希望有人可以帮忙做一下这个功能,希望是完整的代码。
后台高手看这个: :如果前台做不来,那么action去获取的时候 值的时候,怎么保证sku和数量一一对应,而不错位呢。String[] sku=request.getParameterValues("sku");
String[] quantity=request.getParameterValues("quantity");。。。我是通过这个取值的。 然后把quantity中的空值去掉后组成一个新的quantity,然后去对应sku。 那么就会产生错位的问题,即假如第一个sku被勾选,但是后面对应的input 为空的话,则这样做的结果就是会第一个sku会对应下面的数值。希望高手提点一下,有没有其他好的取值办法,可以一一对应。 展开
<div class="checkbox">
<label>
<input type="checkbox" id="sku" name="sku" value="${sku }" >
数量:<input type="text" id="quantity" name="quantity" >
</label>
</div>
</s:iterator>
毕业设计疑问
前台高手看这里::这是一个用struts标签做的一个循环输出, 前面是 checkbox 后面都对应一个input text。
我想要的是,如果勾选了前面的checkbox ,则后面的文本框不得为空, 否则form 就不能提交,(希望出现提示,或者提交form的时候出现提示)。。。 因为我是初学者,对前台的都不太懂,希望有人可以帮忙做一下这个功能,希望是完整的代码。
后台高手看这个: :如果前台做不来,那么action去获取的时候 值的时候,怎么保证sku和数量一一对应,而不错位呢。String[] sku=request.getParameterValues("sku");
String[] quantity=request.getParameterValues("quantity");。。。我是通过这个取值的。 然后把quantity中的空值去掉后组成一个新的quantity,然后去对应sku。 那么就会产生错位的问题,即假如第一个sku被勾选,但是后面对应的input 为空的话,则这样做的结果就是会第一个sku会对应下面的数值。希望高手提点一下,有没有其他好的取值办法,可以一一对应。 展开
3个回答
展开全部
<input type="checkbox" id="sku1" name="sku" value="${sku }" >
数量:<input type="text" id="quantity1" name="quantity[]" >
首先id是唯一,如果是多个你在后面可以在循环的时候加上数字1,2,3.。。这样sku1就对应quantity1,sku2就对应quantity2,一次类推,你提交的时候先获取被选中的skuxxxxx,然后通过截取出后面的数字,和quantity链接组合成对应input的id就可以获取到对应的input的value值,if(getElementById('quantity+截取数字').value==“”)
{
//获取表单焦点,提示信息,退出js;
alert(‘xxx不能为空’);
getElementById('quantity+截取数字').focus();
return false;
}
其他的也都是根据skuxx,后面对应数字来判断input value
如果用jquery可以查看下jquery获取元素的方法,如按标签获取,做循环,会自带的一个index值
祝你好运,ps:jquery还是挺好用的
数量:<input type="text" id="quantity1" name="quantity[]" >
首先id是唯一,如果是多个你在后面可以在循环的时候加上数字1,2,3.。。这样sku1就对应quantity1,sku2就对应quantity2,一次类推,你提交的时候先获取被选中的skuxxxxx,然后通过截取出后面的数字,和quantity链接组合成对应input的id就可以获取到对应的input的value值,if(getElementById('quantity+截取数字').value==“”)
{
//获取表单焦点,提示信息,退出js;
alert(‘xxx不能为空’);
getElementById('quantity+截取数字').focus();
return false;
}
其他的也都是根据skuxx,后面对应数字来判断input value
如果用jquery可以查看下jquery获取元素的方法,如按标签获取,做循环,会自带的一个index值
祝你好运,ps:jquery还是挺好用的
展开全部
假如你点击id='btn'的按钮后验证文本框不为空
$('#btn').click(function(){
$("input[type='checkbox']:checked").each(function(){
if($(this).siblings("input[type='text']").val()=="")
{
alert("文本框不能为空");
}
});
});
上面的代码是checkbox和文本框在同一阶的情况下,如果两者不是同一个父级,这句(if($(this).siblings("input[type='text']").val()==""))逻辑可能要改一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$("#quantity").click(function(){
if($("#sku").attr("checked")==true){
alert("文本框不能为空!");
}
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询