簡體   English   中英

JQuery 移動單選按鈕在選擇其他按鈕時保持選中狀態。 使用.html function

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM