【问题标题】:calling javascript function from <select> onchange从 <select> onchange 调用 javascript 函数
【发布时间】:2012-09-22 07:53:10
【问题描述】:

我正在尝试从select 标记的 onchange 属性调用 javascript 函数!我的问题是我将选择的名称属性传递给始终为空的函数。

<body>


<form action="" method="post">
<select name="slct" id="name" onchange="rohan('measurement_conversion', '<?php echo isset($_POST["slct"])?$_POST["slct"]:"null" ?>')">
<option value="yes" selected="selected"> yes </option>
<option value="nopes"> nopes </option>
<option value="may be"> May be </option>
<option value="dont know"> dont know </option>
</select>
</form>

<div id="abc">
</div>


</body>

这里是我的 javascript 函数

<script>

function rohan(var1, var2)
{

    document.getElementById("abc").innerHTML=var1 + "            " + var2;
}

</script>   

它总是打印 null.. 任何帮助将不胜感激!

【问题讨论】:

    标签: php javascript html


    【解决方案1】:

    HTML:

    <body>
        <form action="" method="post">
            <select name="slct" id="name" onchange="rohan(this.value)">
                <option>Select</option>
                <option value="yes" selected="selected"> yes </option>
                <option value="nopes"> nopes </option>
                <option value="may be"> May be </option>
                <option value="dont know"> dont know </option>
            </select>
        </form>
    </body>
    

    JS:

    <script>
        function rohan(value)
        {
            //you can get the value from arguments itself
            alert(value);
        }
    </script>
    

    【讨论】:

      【解决方案2】:

      在浏览器中运行 JavaScript 之前,PHP 在服务器上运行。当用户更改所选项目时,它不会被重新评估。

      【讨论】:

      • 那么解决办法是什么?
      • 响应用户更改的代码需要 (a) 用 Ja​​vaScript 编写,而不是 PHP... 或 (b) 使用 AJAX。
      【解决方案3】:

      没有放入标签HTML属性javascript,onchange在脚本中更好:

      <script>
          var b=document.getElementById('name');
              b.onchange=function (){
              var a=document.getElementById('name').value;
              console.log(a);
          }
      </script>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-17
        • 2010-10-12
        • 1970-01-01
        • 1970-01-01
        • 2016-10-24
        • 2021-10-24
        • 1970-01-01
        相关资源
        最近更新 更多