div的关闭按钮,使用Jquery访问ID

时间:2016-06-06 14:46:36

标签: javascript jquery html css button

我想为我的div创建一个关闭按钮。我有3个div,每个div都有一个特定的ID。所以,我的想法是将CSS'display'设置为'none',访问每个div的id。 以下示例无效。

有人知道为什么吗?

Java脚本

function CloseDiv(element) {
    var id = $(element).closest('div').attr('id')
    alert(id)  // It's returning the correct id
    $(id).css("display", "none");
}

HTML

<span id='close' onclick='CloseDiv(this)'>x</span>

2 个答案:

答案 0 :(得分:3)

您无需提取ID并使div隐藏。你可以有一个直接选择器并使div隐藏。

function CloseDiv(element) {
    $(element).closest('div').hide()
}

.hide()相当于.css("display", "none");

你也可以用这样的jquery删除内联函数调用,

$(".close").click(function() {
  $(this).closest("div").hide();
});

请注意,我使用了class而不是id选择器,以防你有多个元素

答案 1 :(得分:0)

只需更改

import numpy as np
import matplotlib.pyplot as plt
from statsmodels.distributions.empirical_distribution import ECDF
%matplotlib inline

grades = (93.5,93,60.8,94.5,82,87.5,91.5,99.5,86,93.5,92.5,78,76,69,94.5,
          89.5,92.8,78,65.5,98,98.5,92.3,95.5,76,91,95,61)


def ecdf_wrong(x):
    xs = np.sort(x) # need to be sorted
    ys = np.cumsum(xs)/np.sum(xs) # normalize so sum == 1
    return (xs,ys)
def ecdf(x):
    xs = np.sort(x)
    ys = np.arange(1, len(xs)+1)/float(len(xs))
    return xs, ys

xs, ys = ecdf_wrong(grades)
plt.plot(xs, ys, label="wrong cumsum")
xs, ys = ecdf(grades)
plt.plot(xs, ys, label="handwritten", marker=">", markerfacecolor='none')
cdf = ECDF(grades)
plt.plot(cdf.x, cdf.y, label="statmodels", marker="<", markerfacecolor='none')
plt.legend()
plt.show()

$(id).css("display", "none");

或者更好,使用

$('#' + id).css("display", "none");