動的リンクのJavaScript関数パラメータ伝達の問題


最近プロジェクトをする過程で小さな問題に出会って、関連資料を調べてからすでに解決しました.
問題は次のとおりです.
function lowestPriceInfo1(data){ 
		jQuery("#tabcity_1").html("");
		var s='<ul>';
		var orgCity;
		var destCity;
		var orgTime;
		for(var i = 0 ; i< data.length;i++) 
		{   
			orgCity=data[i].orgCity;
			destCity=data[i].dstCity;
			orgTime=data[i].orgTime;
		
			s+='<li class="cityInfo" style="cursor: pointer;" onclick=lowestPriceInfo("'+orgCity+'","'+destCity+'","'+orgTime+'")>'+data[i].orgCity+' '+data[i].dstCity+' '+data[i].orgTime+' '+data[i].price+' '+data[i].discount+'</li>';
		}
		s+='</ul>';
		jQuery("#tabcity_1").html(s);
	}
  • のonclickイベントは、次のように定義された別のJSの関数lowestPriceInfo()を呼び出します.
    function lowestPriceInfo(orgCity,destCity,orgTime)
    {
       ............ 
    }

    数回のテストで、
  • の3つの定義済みパラメータが伝達されないことに気づき、onclick=lowestPriceInfo('+orgCity+'、'+destCity+'、'+orgTime+')と書かなければならないことに気づきました.直接lowestPriceInfo(orgCity,destCity,orgTime)と書くのは使いにくいです.もちろん注意したいのは、ここの
  • タグは動的に生成されている~~~動的に生成されていない場合は、そのまま後の書き方に従えばよいことです.