jQuery Mobile动态内容 - 无法选择标记

时间:2016-07-06 22:52:36

标签: javascript jquery jquery-mobile

我在谷歌网络应用程序中使用jQuery Mobile,只是在选择标签时遇到了一些问题。更具体地说,我的内容是从外部源加载的,因此最初需要加载页面。一旦外部源可用,我就使用jQuery用内容更新页面。此内容中包含输入标记。问题是当我更新页面时,我无法找到此输入标记的值。

以下是我的代码: (初始html - 加载内容之前)

       <div class="ui-body ui-body-a">
          <div id="googleList" >
              <fieldset data-role="controlgroup" data-mini="true" >
                 <input type="checkbox" name="checkbox-v-6a" id="checkbox-1-a">
                 <label for="checkbox-v-6a">Loading . . . </label>
             </fieldset>
          </div>
       </div>

以下是我的jQuery在新内容出现时更新上面的代码:

function showTaskList(tasks)
{
   //Generate HTML
   var htmlToInsert = "<fieldset data-role=\"controlgroup\" data-mini=\"true\" >";


   for(var i = 0; i < tasks.length; i++)
   {

      htmlToInsert += "<input type=\"checkbox\" data-id=\"" + tasks[i][1] + "\" name=\"checkbox-" + i + "-a\" id=\"checkbox-" + i + "-a\" class=\"custom taskCheckBox\" ";
      if(tasks[i][2] != undefined)
         htmlToInsert += "checked=\"checked\"";
      htmlToInsert += " />";
      htmlToInsert += "<input id=\"currency-controlgroup1\" data-id=\"" + tasks[i][1] + "\" type=\"text\" value=\"" + tasks[i][0] + "\" data-wrapper-class=\"controlgroup-textinput ui-btn\" class=\"taskinputBox\">";
   }

   //Insert HTML into site
   $("#googleList").html(htmlToInsert + "</fieldset>");

   //Refresh List
   $("#googleList").trigger("create");
}

以下是获取输入标记值

的代码
$(document).ready(function(){
    function processTaskList()
    {
       console.log("Test");
       $(document).on('click', '.taskCheckBox', function (event, ui) {
          var checkBoxId = $(this).data("data-id");
          console.log("CheckBox:" + checkBoxId );
       });
    }
});

当我点击其中一个复选框时,CheckBoxId不断返回。我希望能够读取data-id值。我不确定如何解决这个问题?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我再次测试了下面的代码,它的确有效 - 感谢您的帮助

$(document).on('click', '.taskCheckBox', function (event, ui) {
  var checkBoxId = $(this).data("id");
  console.log("CheckBox:" + checkBoxId );

});