-1

私はjavascriptとhtmlが初めてで、ドロップダウンリストを表示するプログラムを書いています。選択したオプションに応じて、2つのラジオボタンとテキストフィールドを表示します。これらの入力 (ラジオ ボタンとテキスト ボックスの両方) の値にアクセスできません。

<html>
<script type="text/javascript">

    window.onload = function()
    {
        var select = document.getElementById("select");
        var texts = document.getElementById("texts");

        select.onchange = function()
        {
            var val = select.options[select.selectedIndex].value;

            texts.innerHTML = "";
            if (val == "employees")
            {
                texts.innerHTML += '<div><input type="radio" name="condition_employees"  value="select_money" /> ></div>';
                texts.innerHTML += '<div><input type="radio" name="condition_employees"  value="select_money1" /> <</div>';
                texts.innerHTML += '<div><input type="text" name="input_employees"  value="select_employees" /></div>';
                //var realValue = document.getElementByName('input_employees')[0].value;
                //texts.innerHTML += '<div>realValue</div>';


            }

            if (val == "total_money")
            {
                texts.innerHTML += '<div><input type="radio" name="condition_money"  value="select_money" /> ></div>';
                texts.innerHTML += '<div><input type="radio" name="condition_money"  value="select_money1" /> <</div>';

                texts.innerHTML += '<div><input type="text" name="input_money"' + '" value="select_money" /></div>';
            }

            if (val == "hits")
            {
                texts.innerHTML += '<div><input type="radio" name="condition_hits"  value="select_money" /> ></div>';
                texts.innerHTML += '<div><input type="radio" name="condition_hits"  value="select_money1" /> <</div>';

                texts.innerHTML += '<div><input type="text" name="input_hits"' + '" value="select_hits" /></div>';
            }

            if (val == "time_founded")
            {
                texts.innerHTML += '<div><input type="radio" name="condition_time"  value="select_money" /> before date </div>';
                texts.innerHTML += '<div><input type="radio" name="condition_time"  value="select_money1" /> after date</div>';

                texts.innerHTML += '<div><input type="text" name="input_time"' + '" value="select_date" /></div>';
            }

        }
    }
    var print = function()
    {
        var category = document.droplist.select.value;
        document.getElementById("category").innerHTML = category


    }

</script>

<body>      
    <form name="droplist" action="html_form_action.asp" method = "get">
    <select id="select" size="1">
        <option value=" " selected="selected"> </option>
        <option value="employees">Number of Employees</option>
        <option value="hits">Hits on TechCrunch</option>
        <option value="time_founded">Time Founded</option>
        <option value="total_money">Total Money</option>
        </select>

        <hr/>

        <div id="texts"></div>

        <input type="button" value="Submit" onClick="print()"/>
    </form> 
        <div id="category"></div>

</body>

「//var realValue = document.getElementByName('input_employees')[0].value;」を使用してこれを実行しようとしました。しかし、これは明らかに機能していません。また、この情報を Python アプリの関数のパラメーターとして渡す方法も知りたいです。

ありがとう!

4

1 に答える 1

2

私は次のことを提案するかもしれません:

  1. <div>JavaScriptで s を書き直さないでください。<div>の innerHTMLに書き込むことができます。
  2. これらの値を常に書き込む代わりに、必要に応じて無効/有効にしてみませんか?

残念ながら、質問にコメントすることはできませんので、ここに投稿する必要がありました。申し訳ありません。

于 2012-08-15T18:55:13.467 に答える