1

外部関数呼び出しとローカル変数を含むこの html コードがあります。

document.getElementById("data").innerHTML='<a href="#" onClick="cordova.exec("ChildBrowserCommand.showWebPage", "'+vivijesolo+'");"><img src="'+vivifoto+'" on;></a>';

問題は、変数が表示され、すべてが正常であるが、関数 cordova.exec を実行できないことです。

どうして??:(

4

3 に答える 3

2

は属性"を壊しています。引用が終了するため、onClick表示してから停止するだけですonClick="cordova.exec("

これを試して

var elem = document.getElementById("data");
elem.innerHTML = '<a href="#"><img src="'+vivifoto+'"></a>';

elem.firstChild.onclick = function() {
    cordova.exec( "ChildBrowserCommand.showWebPage", vivijesolo );
};
于 2012-07-23T13:26:07.530 に答える
0

イベントハンドラーを正しくエンコードする必要があります。

onClick="cordova.exec(&quot;ChildBrowserCommand.showWebPage&quot;,&quot;'+vivijesolo+'&quot);"
于 2012-07-23T13:25:57.180 に答える
0

ここに第二の問題があると思います。この方法でイベントを作成できるとは思いません。この質問を見てください:

子孫のイベントリスナーを破壊せずにinnerHTMLに追加することは可能ですか?

innerHTML imho を使用するだけでは、イベントが正しく設定されません。

于 2012-07-23T13:36:18.643 に答える