情况:
我正在使用 javascript 来组合用户个人资料表单,并且需要有关复选框输入的一些帮助。目标是拥有一个将所有输入信息返回到 mysql 数据库(例如姓名、工作等)的表单,然后用户在保存后也可以更新该表单。
我已经能够让数据库查询与文本输入一起使用,以便用户可以查看他们之前保存的数据。然而,我确实有一个地方需要为每个用户输入一个复选框以获得简单的二进制答案。我想我应该存储这样的信息:checked=1 unchecked=0。
问题:
虽然我可以将选中的信息保存为 value=1,但我正在寻找一种方法,使复选框在用户保存答案并返回编辑后显示选中的内容。另外,我正在寻找一种方法来允许该用户取消选中该框并用 value=0 覆盖 value=1。
我想我可以使用某种草率的 if 语句失败来完成此任务,但我只是想知道在这种情况下通常使用哪些最佳实践。 (如果你看不出我正在慢慢学习网络开发)
我的复选框显示如下:
<tr><td id='ownershipquestion' colspan='2'>Does this person have an ownership stake?</td><td id='ownershipbox'><input type='checkbox' id='part_owner' name='owner' value='1'/>Yes</td></tr>\
以前保存的值是这样获取的:
owner: $("#dialog input[name=owner]").attr("value"),
更新后的值会像这样返回:
item.find("input[name=owner]").attr("value",p.owner);
如有任何建议,我们将不胜感激;提前致谢!
最佳答案
使用 jQuery,您可以通过 prop()
方法读取选中状态(即是否选中)(读取 here )。
这将为您提供一个 bool
值。由于 checkbox
类型的输入也有一个(文本)值,您可能会这样做:
owner: $('input[name=foobar]').prop("checked")
? $('input[name=foobar]').val()
: '',
稍后,您可以设置它(从整数),如下所示:
item.find("input[name=owner]").prop("checked", p.owner ? true: false);
请注意,上面的 HTML 代码显示了一个 text
输入字段。
关于javascript - 以可编辑 JavaScript 形式使用复选框输入的提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18602933/