2

これを使用すると、私のコードは機能します:

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:1where tqminhis a listview item that I click.

<!-- 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>
4

1 に答える 1

0

関数パラメーターは文字列としてレンダリングされません。交換してみてください

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

<a href="#hist_cont" onclick="getChatContent(\''+listUsers[i]+'\')">'+listUsers[i]+'</a>
于 2012-04-18T14:48:43.033 に答える