[英]JQuery Mobile Radio Buttons stay selected when selecting other buttons. Using .html function
我似乎无法弄清楚这一点,或找到有关此的任何信息。 我正在使用 .html() function 生成动态 HTML 以单选按钮格式列出相机选择。 创建 html 的代码工作正常 AFAIK:
var showcameras = function()
{
var html = "<fieldset data-role='controlgroup' data-type='horizontal'>";
for (var i = 0; i < sessiondetails["Camera-Count"]; i++)
{
var name;
var namelabel = "Camera-Names_" + i;
var idlabel = "Camera-ID_" + i;
if (sessiondetails[namelabel]==="")
name = "Camera " + (i+1);
else
name = sessiondetails[namelabel];
html += "<input type='radio' name='"+name+"' id='"+sessiondetails[idlabel]+"' value='"+sessiondetails[idlabel]+"'>";
html += "<label for='"+sessiondetails[idlabel]+"'>"+name+"</label>";
}
html += "</fieldset>";
window.$("#camselection").html(html).trigger("create");
};
这是它创建的 HTML:
<fieldset data-role='controlgroup' data-type='horizontal'>
<input type='radio' name='test1' id='10000' value='10000'>
<label for='10000'>test1</label>
<input type='radio' name='Camera 2' id='10001' value='10001'>
<label for='10001'>Camera 2</label>
<input type='radio' name='Camera 3' id='10002' value='10002'>
<label for='10002'>Camera 3</label>
<input type='radio' name='Camera 4' id='10003' value='10003'>
<label for='10003'>Camera 4</label>
</fieldset>
这是“camselection”div 标签的 HTML:
<div id="camselection" data-role="fieldcontain"></div>
这是问题所在,我一次可以 select 多个单选按钮。 对我来说没有意义,因为它们在同一个字段集中。 我什至尝试将 onClick('refresh') 放在每个按钮上,但它不起作用。 任何帮助是极大的赞赏
为了 select 只有一个单选按钮,它们必须具有相同的名称。
<fieldset data-role='controlgroup' data-type='horizontal'>
<input type='radio' name='camera' id='c10000' value='10000'>
<label for='c10000'>test1</label>
<input type='radio' name='camera' id='c10001' value='10001'>
<label for='c10001'>Camera 2</label>
<input type='radio' name='camera' id='c10002' value='10002'>
<label for='c10002'>Camera 3</label>
<input type='radio' name='camera' id='c10003' value='10003'>
<label for='c10003'>Camera 4</label>
</fieldset>
顺便说一句,当id
属性以字母开头时会更好。
http://www.w3schools.com/html/html_forms.asp
单选按钮分组由名称属性定义。 您的按钮都有不同的名称,因此它们属于不同的组。
它应该是这样的:
<fieldset data-role='controlgroup' data-type='horizontal'>
<input type='radio' name='camera' id='10000' value='10000'>
<label for='10000'>test1</label>
<input type='radio' name='camera' id='10001' value='10001'>
<label for='10001'>Camera 2</label>
<input type='radio' name='camera' id='10002' value='10002'>
<label for='10002'>Camera 3</label>
<input type='radio' name='camera' id='10003' value='10003'>
<label for='10003'>Camera 4</label>
</fieldset>
尝试为单选按钮提供相同的名称。 然后你就可以 select 只有一个单选按钮。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.