命名html选项字段和复选框,以便在jquery中正确使用它
Naming html optionfields and checkboxes to use it properly in jquery
我试图在数组中获得一个值,然后显示它。这对我的这个很有效html:
<input id="email" type="email" name="email" required="required" />
jquery:
$('#email').on('keyup', updateStatus);
person[0] = $('#email').val();
,但当我这样做与选项字段或复选框,这不起作用:我总是得到值女性在选项字段和值1在复选框。我要怎么给它们起名字才能让它工作呢?
<input type="radio" id="gender" name="gender" value="Male">Male</input>
<input type="radio" id="gender" name="gender" value="Female">Female</input>
<label>
<input type="checkbox" id="chbx1" name="sportart" value="1" />1</label>
<label>
<input type="checkbox" id="chbx1" name="sportart" value="2" />2</label>
<label>
<input type="checkbox" id="chbx1" name="sportart" value="3" />3</label>
<label>
<input type="checkbox" id="chbx1" name="sportart" value="4" />4</label>
和jquery:
$('#gender').on('blur', updateStatus);
$('#chbx1').on('blur', updateStatus);
person[3] = $('#gender').val();
person[4] = $('#chbx1').val();
这是我的updateStatus函数:
function updateStatus() {
var person = [];
person[0] = $('#email').val();
person[1] = $('#passwort').val();
person[2] = $('#passwortwd').val();
person[3] = $('#gender').val();
person[4] = $('#chbx1').val();
person[5] = $('#hobby').val();
$('#status').text(JSON.stringify(person));
}
HTML ID应该是唯一的。多个项目不能有相同的ID。
按ID选择(#...
)将始终返回一个项。
例如,查看以下命令:
document.write("By name:" + $("[name='gender']").length + "<br/>");
document.write("By ID:" + $("#gender").length + "<br/>");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="radio" id="gender" name="gender" value="Male"/>Male
<input type="radio" id="gender" name="gender" value="Female"/>Female
<br/><br/>
你应该给所有名称为sportart
的元素分配event:
$("input[name='sportart']").on('change', function() {
alert(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="sportart" value="1" />1<br/>
<input type="checkbox" name="sportart" value="2" />2<br/>
<input type="checkbox" name="sportart" value="3" />3<br/>
<input type="checkbox" name="sportart" value="4" />4
您总是可以使用:checked
选择器获得所选的radio
或checkbox
值:
var arr = $("input[name='sportart']:checked"); // for checkbox it is array
alert(arr.length); // count of selected items
alert(arr[0].value); // value of the first one
$("input[name='gender']:checked").val();
尝试使用change
处理程序并使用name
属性选择器:
$('input[name=gender], input[name=sportart]').on('change', updateStatus);
person[3] = $('input[name=gender]:checked').val();
person[4] = $('input[name=sportart]:checked').val();
的例子:
var pushStatus = function() {
var o = {};
o.gender = $('input[name=gender]:checked').val();
o.sportart = $('input[name=sportart]:checked').map(function() {
return this.value;
}).get().join(',');
$('#status').html(JSON.stringify(o));
};
$(function() {
$('input[name=gender], input[name=sportart]').on('change', pushStatus);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="radio" name="gender" value="Male" />Male
<input type="radio" name="gender" value="Female" />Female
<label>
<input type="checkbox" name="sportart" value="1" />1</label>
<label>
<input type="checkbox" name="sportart" value="2" />2</label>
<label>
<input type="checkbox" name="sportart" value="3" />3</label>
<label>
<input type="checkbox" name="sportart" value="4" />4</label>
<div id="status"></div>
相关文章:
- jQuery Wan Spinner插件的多个字段
- 使用jquery将输入字段转换为文本
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 将值传递给jquery创建的输入字段
- JQuery:当其他输入字段的值发生更改时更改值
- JQuery获取隐藏字段的值
- 使用jQuery'生成输入字段;s追加
- 当所有输入文本字段都为空时,禁止表单提交,但当jquery中的任何字段不为空时允许提交
- 如果值为0,则Jquery formvalidation是必填字段
- 无法根据用户在编辑窗口中的输入显示/隐藏jtable jquery字段
- jQuery字段验证-是否为空,以及正确的值
- jQuery-字段值和比较
- 根据在jQuery字段中输入的数量显示表单的不同部分
- 在数组中存储 JQuery 字段与仅存储选择字符串相比如何
- Javascript jQuery:字段集上的regexp
- 动态生成jQuery字段的id
- 最有效的jquery字段验证方法
- jQuery字段选择replacesselection不't为我工作
- 使用JQuery:字段名称读取JSON
- Php中不能使用Jquery字段