0

私はJavaScriptの初心者です!同じスクリプトタグ内の別の関数から関数を呼び出そうとしています。引数を送信せずにこれを行うと正常に機能しますが、引数を使用してこれを行うと、別の関数が呼び出されません。

これが私がしていることです

function measurement_convert()
{
var mc = "Measurement Conversion";
    txt = "<h2>"  + mc + "</h2> <br><br>";

    txt +=
        "<form action='' method='post'>" +
        "Select Type <select name='conversion_type' onchange='loadXML('abcd')'> "+
                    "<option value='area'>Area</option>"+
                    "<option value='length'>Length</option>"+
                    "<option value='volume'>Volume</option>"+
                    "<option value='weight'>Weight</option>"+
                    "</select> <br><br>"
    document.getElementById("content_main_top").innerHTML=txt;
}

onchangeそのため、このフォームから関数を呼び出しています。

そして、これが別の機能です

 function loadXML(var1)
 {
    document.getElementById("content_main_top").innerHTML=null;
    document.getElementById("content_main_bottom").innerHTML=null;
 }

誰かが私を助けることができますか?

4

2 に答える 2

3

あなたの問題は、同じタイプの引用符をネストしようとしていることです:

onchange='loadXML('abcd')'

これは実際には次のように解釈されます。

onchange='loadXML('

代わりに、試してください (このコードは PHP 文字列内にあるため、エスケープされた二重引用符に注意してください):

Select Type <select name=\"conversion_type\" onchange=\"loadXML('abcd')\">
于 2012-09-21T14:19:20.703 に答える
1

値を閉じるために同じものを使用しているため、単一引用符は onchange 値で衝突しています。

次のように変更できます。

"Select Type <select name='conversion_type' onchange=\"loadXML('abcd')\"> "
于 2012-09-21T14:21:41.170 に答える