JQuery Hide功能不起作用

时间:2014-05-24 07:26:36

标签: jquery

我希望通过点击链接隐藏span标记,但不能正常工作。

我正在使用以下代码

<script type="text/javascript">
    function showhide(obj) {
        $(obj).closest('tr').find('td span').hide();
        //$('.testspan').css('background-color', 'red');        }
    }
</script>

<table>
    <tr>
        <td style="padding-top: 16px float:left;" colspan="3" id="asd">
            <h3>
                <u>
                    <a class="faculty_more_des" href='javascript:showhide(this);'>Read More</a>
                </u>
            </h3>
            <span class="testspan">This is test sample </span>
        </td>

    </tr>
</table>

2 个答案:

答案 0 :(得分:3)

问题出在href处理程序this引用窗口对象,所以使用onlick处理程序来调用方法

<a class="faculty_more_des" href="#" onclick='javascript:showhide(this);'>Read More</a>

演示:Fiddle

但我更喜欢使用jQuery注册事件处理程序而不是使用内联处理程序

答案 1 :(得分:1)

代码中的

this引用了window对象,您正在加载jQuery,使用它的函数:

$('.faculty_more_des').on('click', function(event) {
   // event.preventDefault();
   $(this).closest('h3').next('.testspan').toggle();
});