0

javascriptの変数に問題があります。私の状況は次のとおりです。

PHPファイルで私は持っています:

<div class="fd_text" onmouseover="zobraz_text('pom','1','1')" onmouseout="zobraz_text('pom','1','0')">something in</div>

JSファイルには次のものがあります。

var pom1 = "Some text1";
var pom2 = "Some text2";

function zobraz_text(firma, cislo, udalost){
    obsah_text = firma+cislo; //this is wrong and why I wrote lower in text under this code

    document.getElementById("bloks").innerHTML = document.getElementById("bloks").innerHTML + obsah_text; //this ID is correct
}

obsah_textpom1pom2などからテキストを追加する必要がある変数です。PHPファイルの
どこpom1からどこpom2から取得するか。mouseover

zobraz_text私が与えた関数から最初の2つのパラメーターをグループ化するとpom1、これは私がテキストを持っている場所とpom1同じではありません。pom1Webにはテキストがあります"pom1"が、テキストが必要です"Some text1"

このサンプルコードのように、 変数を削除して変数obsah_textを追加すると、コードが機能します。pom1

これは変数からのテキストを表示し、これは問題ありませんが、変数を追加すると、このコードは300の状況の1つでのみ機能します(関数に1番目と2番目のパラメーターがあるためzobraz_text()

document.getElementById("bloks").innerHTML = document.getElementById("bloks").innerHTML + pom1;

あなたが私を理解し、助けてくれると信じています。多くの方にとってはシンプルなことになると思います。

4

1 に答える 1

3

変数の変数を作成することはできません。pom1とがグローバルである場合pom2、あなたは潜在的にそうすることができますがwindow[firma + cislo]、私はそれをお勧めしません。

代わりに、オブジェクトを使用してpomsを格納します。

var poms = {
    "pom1": "Some text1",
    "pom2": "Some text2",
}
//snip
obsah_text = poms[firma + cislo];
于 2013-03-06T13:18:25.203 に答える