jqm listview上的onclick事件无效?

时间:2012-06-20 08:20:58

标签: jquery jquery-mobile cordova phonegap-plugins

在我的Phonegap android应用程序中动态添加列表项到jqm listview,点击一个项目,我取项目索引并将其传递到另一个页面,根据点击的项目显示相关信息。它与jqm v1一起工作正常。 0a3但现在我更新到jqm v1.1.0,现在onclick事件无法正常工作。有什么帮助吗?

for(var i=0;i<result.length;i++)
{
 var li=document.createElement("li");
  li.innerHTML="<a onclick='getIndexOfClickedListItem("+i+");'></a><p><b>CustName</b>"+result[i].fields.NAME+</p>";
 ul.appendChild(li);
}

2 个答案:

答案 0 :(得分:2)

      var items=new Array();          
      for(i=0;i<data.resulrset.length-1;i++)
      {
         items.push("<li onclick='getvalue(\""+data.resulrset[i].city_name+"\")'><a href='#'>"+ data.resulrset[i].city_name + "</a></li>")              
      }
      var liinner_html=items.join('');      
      $("#list").html(liinner_html);
      $(list).show();

答案 1 :(得分:1)

Hiya请在这里查看(因为我看不到您的完整代码)使用JQM列表视图的工作演示 http://jsfiddle.net/3RyXz/

这将添加新的li,您也可以在页面之间导航。

这应该有所帮助,如果我遗漏任何东西,请告诉我。

  

更新了演示

此处有索引提醒http://jsfiddle.net/RTpqd/14/(我已添加了您需要的类似功能 - getIndexOfClickedListItem:)

行为:第一次 - 点击Add Item链接,然后点击foo1 li,您会看到弹出正确的索引值。

<强>码

$('.add').click( function(){
    $('#1, #2').append('<li><a onclick="getIndexOfClickedListItem('+count+');"> foo' + count + '</a></li>');

    $(this).closest('.ui-content').find('.ui-listview').listview('refresh');

    count++;
});

这里的getIndexOfClickedListItem函数其他演示会更清晰

//adding click on new list item for index
function getIndexOfClickedListItem(str){

     alert("The clicked list index is ==>" + str);
}

添加li

的部分代码
$('.add').click( function(){
    $('#1, #2').append('<li>' + count + '</li>');

    $(this).closest('.ui-content').find('.ui-listview').listview('refresh');

    count++;
});