如何将值从 DB 传递到单选按钮组?
Posted
技术标签:
【中文标题】如何将值从 DB 传递到单选按钮组?【英文标题】:How to pass the value from DB to the group of radio buttons? 【发布时间】:2016-04-25 01:23:04 【问题描述】:我有一个与单选按钮有关的问题。所以我有用户填写并保存在数据库中的表格。用户可以选择将该表格通过电子邮件发送给他们自己。如果用户点击链接,他们应该会得到包含他们信息的表单。此时我能够检索所有文本输入值,对我来说问题是以下是 html 代码示例:
<cfquery name="jobInfo" datasource='test'>
SELECT jobCat
FROM userInfo
WHERE UserID = <cfqueryparam cfsqltype="cf_sql_integer" value="#RecID#">
</cfquery>
<cfoutput query="jobInfo">
<tr>
<th>Jobs</th>
</tr>
<tr>
<td>
<label>
<span><input type="radio" name="category" value="Teacher" id="teacher"></span>
<span>Teacher</span>
</label><br>
<label>
<span><input type="radio" name="category" value="Professor" id="professor"></span>
<span>Professor</span>
</label><br>
<label>
<span><input type="radio" name="category" value="Athletic" id="athletic"></span>
<span>Athletic Director</span>
</label>
<td/>
</tr>
</cfoutput>
然后我尝试像这样检索单选按钮的值:
<script>
$('input:radio[name="category"]').val('<cfoutput>#jobInfo.jobCat#</cfoutput>');
</script>
查询输出:
<cfoutput>#jobInfo.jobCat#</cfoutput> gives me: Teacher
如果我使用字段 id,通常我能够获取复选框的值,但在这种情况下,我必须将值传递给单选按钮组。如果有人知道我做错了什么,请告诉我。谢谢。
【问题讨论】:
请显示查询输出。 这些单选按钮是提交的表单的一部分吗? 是的,他们是。这可以通过单选按钮的每个输入标签内的 cfif 来完成吗? 【参考方案1】:您使这比必要的复杂得多。如果您要提交表单,则根本不需要 javascript。
您要做的第一件事是预先选择与查询输出相关的单选按钮。以下是你为老师做的事情。
<input
type="radio"
name="category"
value="Teacher"
id="teacher"
<cfif jobInfo.jobCat is "teacher">selected="selected"</cfif>
>
重复其他两个选项。
【讨论】:
我想你的意思是checked="checked"
。见***.com/questions/5592345/…【参考方案2】:
我猜你的代码是这样的:
<span><input type="radio" name="category" value="Teacher" id="teacher" #((jobInfo.jobCat EQ "Teacher")?'selected="selected"':"")# ></span>
<span>Teacher</span>
并为其他跨度做相对。
如果这些值实际上来自一个列表会更好,这样你就不会像这样重复你的逻辑了
<tr>
<td>
<cfloop list="Teacher,Professor,Athletic" index="currCat">
<label>
<span><input type="radio" name="category" value="#currCat#" id="#currCat#" #((jobInfo.jobCat EQ currCat)?'selected="selected"':"")></span>
<span>#currCat#</span>
</label><br>
</cfloop>
<td/>
</tr>
希望对你有帮助
【讨论】:
以上是关于如何将值从 DB 传递到单选按钮组?的主要内容,如果未能解决你的问题,请参考以下文章
将 [(ngModel)] 添加到单选按钮组后,默认的 [checked] 不再起作用