0

情况:

我正在使用 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);

任何建议,将不胜感激; 提前致谢!

4

1 回答 1

0

prop()使用 jQuery,您可以通过方法(阅读此处)读取已检查的状态(即是否已检查)。

这给了你一个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输入字段..

于 2013-09-03T23:42:08.037 回答