我正在借用/改编这个简单的html/javascript表单,将一些数据放入数据库中.原始代码使用表单中的文本字段,但我正在使用单选按钮.下面的前三个步骤是原始的,我的问题是在...后面,我给单选按钮提供相同的ID ...希望这很清楚......
步骤1.用户将值输入到id为"nick"的表单中
<tr>
<td><label>User</label></td>
<td><input class="text user" id="nick" type="text" MAXLENGTH="25" /></td>
</tr>
Run Code Online (Sandbox Code Playgroud)
步骤2.与使用id分配给变量的id"nick"相关联的值
var inputUser = $("#nick");
Run Code Online (Sandbox Code Playgroud)
第3步.从变量中获取值以插入数据库...
if(inputUser.attr("value")
Run Code Online (Sandbox Code Playgroud)
但如果它是两个"单选按钮"而不是一个"文本"字段....
<td><label>Interview</label></td>
<td><input type="radio" name="interview" id="nick" value="pass" />Pass</td>
<td><input type="radio" name="interview" id="nick" value="fail" /> Fail</td>
Run Code Online (Sandbox Code Playgroud)
我是否给单选按钮指定相同的"id",这样当我将值赋给变量时它仍然是这样的...
var inputUser = $("#nick");
Run Code Online (Sandbox Code Playgroud)
那么在id"nick"中找到的任何按钮都会被分配?
nnn*_*nnn 14
由于您使用的是jQuery,因此您可以使用:checked选择器轻松获取所选单选按钮的值:
$("input[name=interview]:checked").val()
Run Code Online (Sandbox Code Playgroud)
你绝对不应该给多个元素提供相同的ID(这是无效的HTML并且会导致你的JavaScript中出现令人困惑的错误),但即使这样做有效也无济于事,因为作为一个组的单选按钮没有选定的值:您需要确定当前检查的是哪一个,然后获取其值,如上所示.(当实际提交表单时,在获取Web服务器上的值时这不是问题,因为只有已检查的无线电的值才会被提交.)
另请注意,在您所说的原始代码中inputUser.attr("value"),您可以说inputUser.val().