我有关于日历的项目,起初我有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 );
}
答案 0 :(得分:4)
确定存在,在干净的javascript中
if(document.getElementById("calq")!='undefined')
{
// do something, it exists
}
使用jquery
if($("#calq").length)
{
// do something, it exists
}
要在干净的javascript中检查ID
if(this.getAttribute('id')=="calc")
{
// do something, it exists
}
使用jquery
if($(this).attr("id")=="calq")
{
// do something, it exists
}
答案 1 :(得分:2)
您可以通过Jquery进行检查。我想你想要制作类似switch
的东西,并为每个div做一些操作。如果我是对的,你可以使用Jquery的each
函数来循环div元素,并遵循检查id的条件。
if($(this).attr("id")=="calq")
答案 2 :(得分:1)
你走了:
if ($('#calq').length === 1) {
// there is id = calq
}
答案 3 :(得分:1)
似乎最好的解决方案是将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 );
}