将HTML元素的值调用为另一个元素的onclick

时间:2017-03-27 00:33:04

标签: javascript jquery html

我有一个选择框,可以在更改时调用函数。

<select name ="selectBox" class="select_box" onchange="getVal(this)">   

我希望在改变无线电选择后再次调用此值。

<input type="radio" name="orderBy" value="desc" class="radio_sort" onchange="getVal(this)"> Descending<br>
<input type="radio" name="orderBy" value="asc" class="radio_sort" onchange="getVal(this)"> Ascending<br>

这不起作用。我怎样才能做到这一点?提前谢谢。

2 个答案:

答案 0 :(得分:2)

在运行该功能时,您可以使用选择框始终打印或执行任何操作,而不是传递this。 (我为此示例添加了一个id)。

除非您需要该功能根据内容执行不同的操作,否则在您的上下文中传递this是不必要的。

&#13;
&#13;
function getVal()
{
    var select = document.getElementById("selectBox");
    console.log(select.value);
}
&#13;
<select id="selectBox" name ="selectBox" class="select_box" onchange="getVal()">
  <option>yes</option>
  <option>no</option>  
</select>

<input type="radio" name="test" onChange="getVal()"/> First
<input type="radio" name="test" onChange="getVal()"/> Secon
&#13;
&#13;
&#13;

答案 1 :(得分:1)

这是一个非常小的&#34;问题,按照Hep center ...而且可能没有&#34;完成&#34;。

但试试这个:

<input type="radio" name="orderBy" value="desc" class="radio_sort" onchange="getVal( $( '[name=\"selectbox\"]' )"> Descending<br>
<input type="radio" name="orderBy" value="asc" class="radio_sort" onchange="getVal $( '[name=\"selectbox\"]' )"> Ascending<br>

诀窍是提供正确的元素作为函数的参数 ;)