js中拼接的html程式碼中的onclick事件解析錯誤

守護大白菜發表於2017-07-25

js程式碼:

html+='<div class="mt15 sp_btn"><span class="fr sp1">';

html+='<a href="javascript:void(0)" class="kc_btn" onclick="playv1("'+detail.isfree+'","'+detail.id+'","'+detail.id+'");">課程</a>';

html+='</span><span class="fr"><a  class="kc_btn" href="javascript:void(0)" onclick="playv1("'+detail.isfree+'","'+detail.id+'","'+detail.id+'");">訓練營</a></span></div>';


web端展示形式:

<div class="mt15 sp_btn"><span class="fr sp1"><a href="javascript:void(0)" class="kc_btn" onclick="playv1(" 1","1","1");"="">課程</a></span><span class="fr"><a class="kc_btn" href="javascript:void(0)" onclick="playv1(" 1","1","1");"="">訓練營</a></span><span class="red">付費</span></div>

結果:onclick事件後面多了個  "=""  多餘程式碼


解決辦法:

將 js中的 onclick="playv1("'+detail.isfree+'","'+detail.id+'","'+detail.id+'");" 

修該為     onclick="playv1('+detail.isfree+','+detail.id+','+detail.id+');"    (去掉變數外的"符號)就可以了

<div class="mt15 sp_btn"><span class="fr sp1"><a href="javascript:void(0)" class="kc_btn" onclick="playv1(" 1","1","1");">課程</a></span><span class="fr"><a class="kc_btn" href="javascript:void(0)" onclick="playv1(" 1","1","1");"="">訓練營</a></span><span class="red">付費</span></div>

具體原因不太清楚,哪位高手留言解釋一下

相關文章