【发布时间】:2014-02-20 15:47:48
【问题描述】:
我一直在使用 Javascript、JQuery 和 FlatUI 框架创建网页,但遇到了一些障碍。
使用这个 JQuery 代码:
$( "#db" + category ).dialog( "open" );
我打开以下对话框:
<div id="dbHome" class="dialogBox">
<form id="formHome" action="javascript:void(0);" onsubmit="submitData('Home', 'radio')">
<p>
What type of home do you live in?
</p>
<label class="radio" for="radioHome1">
Unit / Flat / Apartment
<input type="radio" id="radioHome1" name="inputHome" value="Unit / Flat / Apartment" data-toggle="radio" checked="">
</label>
<label class="radio" for="radioHome2">
Town House / House
<input type="radio" id="radioHome2" name="inputHome" value="Town House / House" data-toggle="radio">
</label>
<input type="submit" class="btn btn-primary btn-large btn-info" style="float: right;" value="Submit">
</form>
</div>
对话框打开没有问题。但是,当我单击提交按钮(并执行“submitData()”时,该函数无法检索用户从单选按钮中选择的值。但是,这个问题还有更多:如果用户没有单击单选按钮,而不是默认的“选中”按钮,该函数能够检索该值。但是如果用户选择不同的单选,然后再次选择默认单选,该函数仍然会在被要求时返回“未定义”获取价值。
有问题的函数执行以下代码:
function submitData(category, inputType)
{
// Get the index (to search in the array)
var key;
key = $("#form" + category + " input[name=input" + category + "]:checked").val();
alert("KEY: " + key); // Prints "undefined" if the user makes any input.
}
我尝试了无数不同的代码来从收音机中检索值。一个都没有用。
希望我在这里提供了足够的信息,并提前非常感谢您。
【问题讨论】:
-
可能是次要的,但 标签不应该包裹单选按钮。应该只是
-
请检查这个小提琴,我只修改了一些小东西。当我单击“运行”时它正在工作。 jsfiddle.net/DnxHk/3。所以错误一定来自其他地方。
-
我想我已经解决了这个问题。收音机是在一个外部 javascript 文件(框架附带的)中定义的。我试图从收音机中读取值的尝试搞砸了。
-
很高兴你发现... :)
-
感谢您的帮助。看到它在您的链接中正确运行帮助我得出了这个结论。
标签: javascript jquery html dialog radio