繁体   English   中英

检查JavaScript中的div ID

[英]check if the div id in JavaScript

我有一个与日历有关的项目,起初我有1个日历,现在我想拥有另一个,但是它们具有不同的值。

<div id="cal">
....
</div>
<div id="calq">
....
</div>

我的问题是,如何在javascript中检查div ID是否为“ calq”?

如果div.id ==“ calq”?

...起初我有...

<script type="text/javascript">
    monthYear = Date.today();
    var cal = new Calendar();
    cal.generateHTML();
    $('#cal').html(cal.getHTML());
    setMonthPrice();
    setSpecialPrice()
</script>

然后我加了

<script type="text/javascript">
    monthYear = Date.today();
    var calq = new Calendar();
    calq.generateHTML();
    $('#calq').html(calq.getHTML());
    setMonthQuantity();
    setSpecialQuantity();
</script>

但是setMonthQuantity()也由cal ,我只希望setMonthQuantity()仅用于calq

function setMonthQuantity()
{
    var weekdayBaseQuantity;
    weekdayBaseQuantity = {{ product.quantity }};

    $('td.calendar-day').append('<div class="dayquantity">' + weekdayBaseQuantity + '</div>');
    $('td.Sat .dayquantity, td.Sun .dayquantity').text( weekdayBaseQuantity );
}

用干净的javascript确定存在

if(document.getElementById("calq")!='undefined')
{
    // do something, it exists 
} 

使用jQuery

if($("#calq").length)
{
    // do something, it exists 
}

要检查ID,请使用干净的javascript

if(this.getAttribute('id')=="calc")
{
    // do something, it exists 
}

使用jQuery

if($(this).attr("id")=="calq")
{
    // do something, it exists 
}

您可以进行检查,例如通过Jquery。 我想您想进行类似switch类的switch并为每个div进行一些操作。 如果我是对的,您可以使用Jquery的each函数针对div元素进行循环,并按照以下条件检查id。

if($(this).attr("id")=="calq")

干得好:

if (​$('#calq').length === 1) {
 // there is id = calq
}​​​

似乎最好的解决方案是将div传递给您正在调用的函数。 这样,您就知道要处理的div。 例如。

<script type="text/javascript">
    monthYear = Date.today();
    var cal = new Calendar();
    cal.generateHTML();
    var calDiv = $('#cal');
    calDiv.html(cal.getHTML());
    setMonthPrice(calDiv);
    setSpecialPrice(calDiv)
</script>

<script type="text/javascript">
    monthYear = Date.today();
    var calq = new Calendar();
    var calqDiv = $('#cal');
    calqDiv.html(cal.getHTML());
    setMonthQuantity(calqDiv);
    setSpecialQuantity(calqDiv);
</script>

我假设$('td.calendar-day')在日历HTML中? 如果是这样,则setMonthQuantity将类似于

function setMonthQuantity(calDiv)
{
    var weekdayBaseQuantity;
    weekdayBaseQuantity = {{ product.quantity }};

    calDiv.closest('td.calendar-day').append('<div class="dayquantity">' + weekdayBaseQuantity + '</div>');
    calDiv.closest('td.Sat .dayquantity, td.Sun .dayquantity').text( weekdayBaseQuantity );
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM