使用mouseover / hover事件设置隐藏元素的值

时间:2015-12-30 05:03:16

标签: javascript jquery

我正在尝试在每个mouseoverover事件上使用#id

更新隐藏值

我的来源:

#html
<li><a href="javascript:void(0)" onmouseover="set_mouseover('1')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('2')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('3')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('4')"></a></li>

...

<input type="hidden" name="mouseover_cell_id" id="mouseover_cell_id" value="">

#code
function set_mouseover(id) {
  jQuery('#mouseover_cell_id').val(id);
}

并且上面的代码不起作用。知道为什么吗?为什么onmouseover甚至没有设定价值?

3 个答案:

答案 0 :(得分:2)

  1. 检查是否包含了jquery lib文件,
  2. 检查您是否在function set_mouseover(id)标记内添加了<script>
  3. function set_mouseover(id) {
      jQuery('#mouseover_cell_id').val(id);
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    
    <li><a href="javascript:void(0)" onmouseover="set_mouseover('1')">1</a></li>
    <li><a href="javascript:void(0)" onmouseover="set_mouseover('2')">2</a></li>
    <li><a href="javascript:void(0)" onmouseover="set_mouseover('3')">3</a></li>
    <li><a href="javascript:void(0)" onmouseover="set_mouseover('4')">4</a></li>
    
    <input type="text" name="mouseover_cell_id" id="mouseover_cell_id" value="">

    如果您在发布控制台错误后出现问题

答案 1 :(得分:2)

试试这个

#html
<li><a href="javascript:void(0)" onmouseover="set_mouseover('1')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('2')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('3')"></a></li>
<li><a href="javascript:void(0)" onmouseover="set_mouseover('4')"></a></li>

...

<input type="hidden" name="mouseover_cell_id" id="mouseover_cell_id" value="">

#code
function set_mouseover(id) {
  document.getElementById('mouseover_cell_id').value=id;
}

这将工作谢谢):

答案 2 :(得分:2)

我建议使用纯JavaScript,如果你不想让锚标签去任何地方,也许只需使用span标签。也可能是因为锚标签中没有任何东西,它们没有宽度或高度,因此无法悬停。

代码:

<style type="text/css">
    li > span {
        width: 50px;
        Height: 50px;
    }
</style>
<script type="text/javascript">
    function set_mouseover(id) {
        document.getElementById("mouseover_cell_id").value = id;
    }
</script>
<li><span onmouseover="set_mouseover(1);"></span></li>

希望这会有所帮助。