2011-08-11 3 views
0

次の行は、それはGoogle ChromeでもIE8で動作FF 5.JavaScriptが5

<a href="javascript:func1(upDiv);">Resend Pin</a> 
<div id="upDiv">ASDFGHJKL</div> 

JS機能

function func1(windowname) { 
    alert(windowname); 
} 

のでは動作しませんFFで動作していません。

+0

"upDiv"が単純な文字列の場合は、文字列として引用符で渡します。 – excanoe

+0

'upDiv'はどこかで定義されていますか? –

+0

upDivは、ページで定義されたDIVタグのIDです。 –

答えて

0

IEとChromeには、その要素を参照するIDを持つ各要素のグローバル変数を作成するという癖があります。

は、文字列を渡して、代わりにgetElementByIdを使用します。

<a href="javascript:func1('upDiv');">Resend Pin</a> 

function func1(windowname) { 
    alert(document.getElementById(windowname)); 
} 

また、javascript:擬似プロトコルを使用しないでください。 JSが無効になっている場合やボタンを使用している場合に適切な場所を参照し、clickイベントのイベントハンドラをアタッチしてください。例えば。

<button onclick="func1('upDiv');">Resend Pin</button> 

本当にしたい場合は、ボタンをリンクとしてスタイルすることができます。

+0

これは機能します。ありがとう。さらにもう一つこれは動作していません: 'xmlhttp.onreadystatechange = handleReadyStateChange;' Ajaxリクエストの作成中。 –

+0

@マーク:まあ、私はそれに何が言えるでしょうか? 'xmlhttp'または' handleReadyStateChange'に問題があります。 –

1
function func1(windowname) { 
    alert(document.getElementById(windowname).innerHTML); 
} 
+0

あなたはとても速く答えました。私はその質問を更新していた。それは動作しません。 –

+0

'upDiv'はどのような変数ですか? 'alert( 'Window:' + windowname);'を使って問題を特定してみてください。 – elslooo

+0

問題の編集を参照してください。 –

0

Mhmmは、グローバル名前空間で定義されたVaRのupDivを持っていたときに私の作品:http://jsfiddle.net/vNnvg/

編集: ああ、あなたの編集の質問をお読みください。 IEではすべての要素idがグローバル名前空間のメンバーになります。したがって、idが "myId"の要素がある場合は、単にJavaScriptでwindow.myIdまたはmyIdを呼び出すだけで取得できます。これはFirefoxでは動作しません。 Btw、これはChromeでうまくいくのだろうか。

+0

upDivは、ページで定義されたDIVタグのIDです。 –

+0

w3cはgetElementById()によってアクセスすることを推奨します - これが望ましいです。 – excanoe

関連する問題