2 ash shang Ash_Shang 于 2016.09.26 09:13 提问

关于html单选radio传值的问题
 <td><input type="radio" name="s011" value="yes"/>yes</td>
 <td><input type="radio" name="s011" value="no"/>no</td>

假如选中yes,如何将no的值设为null也传入后台保存数据库。

7个回答

feng1790291543
feng1790291543   Ds   Rxr 2016.09.26 09:37

加一个事件方法处理,点击选择判断是否为no,后存值

Ash_Shang
Ash_Shang 谢谢,这样也是可取吧,但是由于选项多,要对每一个选项都要定义事件,这样就有点麻烦,代码也显得冗余了。
接近 2 年之前 回复
showbo
showbo   Ds   Rxr 2016.09.26 10:06

保存no没意思啊,你就一个字段输入,对应数据库2个字段你应该存在2个不同的输入对象

Ash_Shang
Ash_Shang 嗯嗯,谢谢,我先试试。
接近 2 年之前 回复
showbo
showbo 回复Ash_Shang: 你这个用一个checkbox就行了,然后服务器端判断下这个是否有值,有对应yes什么的,没有no。如<input type="checkbox" value="yes" name="yesno"/>,服务器端yesno=request("yesno");yes=yesno=="yes"?"yes":null;no=yesno=="yes"?null:"no";大概这个样子。否则就需要前台js控制下2个隐藏hidden域对应你的yes/no2个字段了
接近 2 年之前 回复
Ash_Shang
Ash_Shang 嗯,数据库设计的就是两个字段,yes和no,选择那一项的就存对应的value没选的就存null。有24个单选项,所以如果每个name设计一个事件触发,冗余代码太多,就在想用其他方法来实现。
接近 2 年之前 回复
qq_23898511
qq_23898511   2016.09.26 10:10

yes
no

//保存将no的值设为null后的值
var Value="";
//使用each遍历,如果yes被选中则把no的值设为null
$(":radio[name='s011']").each(function(){
if(this.checked==true)
{
if(this.value="yes")
{
$(".no").text("null");
}
}
});
//取到no的值保存
Value= $(".no").text();

//最后判断一下
if(Value=="null")

Ash_Shang
Ash_Shang 谢谢,你这个方法蛮好的。如果不只有一个name呢?是不是获得整个页面的name,遍历呢?
接近 2 年之前 回复
qq_29594393
qq_29594393   Ds   Rxr 2016.09.26 09:28

只要这样子,还不如直接设置多选得了 ,多选加一个限制只能选一个就好.

Ash_Shang
Ash_Shang 更重要的是存值。
接近 2 年之前 回复
xiaoai1007
xiaoai1007   2016.09.26 09:28

no ,如果是用的Struts2的话,用name属性注入传值。你试试看行不行
Ash_Shang
Ash_Shang 谢谢!
接近 2 年之前 回复
Ash_Shang
Ash_Shang no struts,just servlet and jdbc
接近 2 年之前 回复
qq_23898511
qq_23898511   2016.09.26 10:10

"

yes"

" no"

变一下

qq_23898511
qq_23898511   2016.09.26 10:11
 <td><input type="radio" name="s011" value="yes"/><lable class="yes">yes</lable></td>
 <td><input type="radio" name="s011" value="no"/><lable class="no">no</lable></td>






Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
HTML获取单选按钮的值
25岁以下 25~35岁 35~50岁 50岁以上 function get(){ var value=''; var radio = document.getElementsByName("radio"); for(var i = 0;i<radio.length;i++) { if(radio[i].checked==true) {value =
html中的单选按钮radio如何实现可同时选中多个值进行表单提交
为了便于学习,我们将单选按钮radio和复选框checkbox作对比: 具体代码如下: ****************************************************test.html文件如下**************************************************************************
HTML radio 单选按钮
今天要写的页面上有一个单选按钮的标签,或者说控件。然后写了几次,发现总是写不对,两个选项总是可以同时选中。记得刚学HTML的时候,这个是很简单的一个标签。于是上网看网页加自己动手实验,找到了问题所在。 分析:首先,创建一个单选按钮: 男     女;这样写的话,两者是可以同时选中的。 解决:在input标签中加一个name属性,让两者的name属性值相同,这样系统就会知道包含这个相同name值
模拟 html radio 的单选效果
效果图:   代码如下:  (jQuery版) .unchecked{ border: 1px solid gray; padding: 6px 6px 6px 6px;}.checked{ border: 2px solid #c00; padding: 6px 6px 6px 6px;}va
web单选按钮传值问题
单选按钮代码:&amp;lt;input type=&quot;hidden&quot; name=&quot;quest1&quot; id=&quot;quest1&quot; value=&quot;&quot;&amp;gt; &amp;lt;input name=&quot;Fruit&quot; type=&quot;radio&quot; value=&quot;1&quot; /&amp;gt;苹果 &amp;lt;input name=&quot;Fruit&quot; type=&quo
页面单选框<input type="radio">的分组与优化
我们在做页面的开发时,可能会遇到将lable分组的问题。比如,你可能需要在这个页面上既需要做一个性别的单选lable,还需要做一个职业的单选lable。就是下面这种效果,性别:邮箱登录<input type="radio" value="1" name="article" onclick="show()"  />手机号登录
单选框为什么用radio这个单词?
radio是收音机的意思,老式的收音机是一排按钮,按下一个其他的都会弹起,类似于单选框的功能。 具体可以参考: 1,单选框为什么用radio表示 radio没有这个意思吧? 2,html中input标记的type属性,其属性值其中有一个叫radio,为什么译为单选框?
radio单选框无法实现单选
解决方法: 需要给每个input添加相同的name属性 &amp;lt;div class=&quot;col-md-4&quot;&amp;gt; &amp;lt;div class=&quot;radio&quot;&amp;gt; &amp;lt;label&amp;gt;&amp;lt;input type=&quot;radio&quot; name=&quot;sex&quot; checked /&amp;gt;先生&amp;lt;/label&amp;gt
html之复选杜框(checkbox)、单选按钮(radio)、下拉菜单(select-option)
1、复选框(checkbox) 代码:
多个DIV类似radio单选效果
基本代码及效果 HTML代码 &amp;amp;lt;div id=&amp;quot;left&amp;quot;&amp;amp;gt; &amp;amp;lt;div class=&amp;quot;left1&amp;quot; id=&amp;quot;2d&amp;quot;&amp;amp;gt;&amp;amp;lt;img src=&amp;quot;icon/2D-1.png&amp;quot;&amp;amp;gt;二维图表&amp;amp;lt;/div&amp;amp;