1

我的问题:

我有一排 div 标签,当用户将鼠标悬停在它们上方时,它们充当列的标题,div 更改为排序选项,例如 ASC 和 DESC。我需要他们做的是,当用户单击其中一个选项时,将弹出一个警报,其中包含单击选项的值和 div 类名称。

例如,如果用户单击 ASC,则会弹出一个警报,如果单击 desc,则会弹出 headerID ASC 1 或 headerID DESC 2。

对于我的生活,我无法弄清楚这一点。现在我正在使用警报进行测试,然后我将使用 .load() 加载带有排序选项的页面

div = headerID

排序 = ASC

值 = 1

或者

div = headerID

排序 = DESC

值 = 2

取决于点击了什么。

我已经拥有的演示http://jsfiddle.net/hmeHn/1/

4

3 回答 3

2

这是许多可能的解决方案之一

http://jsfiddle.net/eQJSU/2/

于 2012-04-21T00:21:50.090 回答
1

像这样的东西?

http://jsfiddle.net/hmeHn/6/

于 2012-04-21T00:24:34.600 回答
1

我会将 ASC 和 DESC 文本制作成链接,其中包含与它们中的每一个相关的点击操作。然后,在click回调中,提供您的操作:

    $(this).html('<span id="sortShow">\
                 <a href="#" class="asc">ASC</a> | \
                 <a href="#" class="desc">DESC</a></span>');
    $(this).on('click', 'asc', function(e) {
        e, preventDefault();
        alert('Ascending');
    }).on('click', 'desc', function(e) {
        e, preventDefault();
        alert('Descending');
    })

这只是一个粗略的例子。此外,我建议不要在 jQuery 选择器中使用正则表达式,因为它们比其他选择器慢得多。div[class*=header] 不好。尝试使用另一个类来区分您的标题。

于 2012-04-21T00:26:47.120 回答