jQuery Mobile的:调用JavaScript功能的ReferenceError:找不到变量

问题描述:

我的代码,如果使用这将工作:jQuery Mobile的:调用JavaScript功能的ReferenceError:找不到变量

for(i=0; i<listUsers.length; i++){ 
    if(listUsers[i] != usr){ 
     $("#listHisUser").append('<li><a href="#hist_cont" onclick="getChatContent()">'+listUsers[i]+'</a></li>').listview('refresh'); 
    } 
} 

function getChatContent(){ 
    alert("data"); 
} 

,但如果我把它改成这样:

for(i=0; i<listUsers.length; i++){ 
    if(listUsers[i] != usr){ 
     $("#listHisUser").append('<li><a href="#hist_cont" onclick="getChatContent('+listUsers[i]+')">'+listUsers[i]+'</a></li>').listview('refresh'); 
     } 
} 

function getChatContent(data){ 
     alert(data); 
     alert("data"); 
} 

它得到的错误: ReferenceError: Can't find variable: tqminh at file:///android_asset/www/index.html#hist:1其中tqminh是我点击的listview项目。

<!-- History --> 
<div data-role="page" id="hist" data-title="HISTORY"> 
    <div id="a" data-role="header" data-theme="b"> 
    <h1 style="text-align: left;font-size: 20px">History Chat</h1> 
    </div>  
    <div data-role="content" data-inset="true"> 
    <ul data-role="listview" data-theme="c"> 
    <li><a href="#" onclick="getChatContent('tqminh')">tqminh</a></li> 
    </ul> 
    </div> 
</div> 

您的函数参数不呈现为字符串。尝试更换

<a href="#hist_cont" onclick="getChatContent('+listUsers[i]+')">'+listUsers[i]+'</a> 

<a href="#hist_cont" onclick="getChatContent(\''+listUsers[i]+'\')">'+listUsers[i]+'</a> 
+0

我解决我的问题。非常感谢。 – HiepNguyen 2012-04-19 04:02:57