0

JS で、href 属性が関数を実行するリンクを作成しています。関数 simple は、指定された変数でアラート ウィンドウを開きます。

function alerter(str){
    alert(str);
}

リンクを作成するときは、次のコードを使用します。

var link = document.createElement('a');
link.setAttribute('href','javascript:alerter("hi")');
link.innerHTML = "Sauce";

私がそれをすれば、それはうまくいきます。ただし、私がやりたいことは、以前に定義された変数を警告することです。しかし、私が使用するとき

link.setAttribute('href','javascript:alerter(myvar)');

ポップアップが機能しなくなりました。また、別の関数を記述する代わりに、単純にアラートを href に埋め込む方法はありますか?

4

5 に答える 5

1

そのはず

link.setAttribute('href','javascript:alerter("' + myvar + '")');

その文字列に入れるために文字列連結を使用myvarしています。あなたが持っていた方法は、全体が文字列 "javascript:alerter(myvar)" です

于 2012-06-14T16:41:26.017 に答える
0

最初の質問の使用:

link.setAttribute('href','javascript:alerter(' + somevar + ')');

そしてあなたの2番目の質問の使用のために:

link.setAttribute('href','javascript:alert(' + somevar + ')');

乾杯。

于 2012-06-14T16:47:33.417 に答える
0

これを試して

link.setAttribute('href','javascript:alerter('+myvar+')');
于 2012-06-14T16:41:49.090 に答える
0

http://jsfiddle.net/xmBbw/2/

アンカーの onclick イベントを変更するだけです。どこにもリンクしない場合は、href 属性を使用する必要はありません。むしろ onclick を使用して、好きな機能をそれに割り当てます。また、html タグ内に JavaScript を記述するのは非常に悪い習慣です。しないでください。

グッドプラクティスに関する素晴らしい記事

于 2012-06-14T16:43:04.863 に答える
0

myvar変数はグローバル スコープ内にある必要があります。としてもアクセスできることを確認してくださいwindow.myvar

于 2012-06-14T16:44:16.553 に答える