2013-06-14 2 views
0

Здесь я хочу проверить соответствие для конкретного имени класса (последний класс с именем YtoD) и написать условие в соответствии с ним. У меня нет идеи, почему она не работает.Проверка соответствия имени объекта

HTML:

Select Range: <a href="#" class="x_lab" name="month" onclick="Lab(this)">Last Month </a>|<a href="#" class="x_lab" name="2 weeks" onclick="Lab(this)" class="label2"> Last 2 Weeks </a>|<a href="#" class="x_lab" name="1 week" onclick="Lab(this)" class="label2"> Last 1 Week</a>|<a href="#" class="x_lab" name="YtoD" onclick="Lab(this)"> Year to Date</a> 

Javascript

function Lab(obj) { 
    var a = obj.name; 
    if (a != YtoD) { 
     document.getElementById("linechartxaxislabel").innerHTML = "Price  
    Timeline" + "(Last" + a + ")"; 
    } else { 
     document.getElementById("linechartxaxislabel").innerHTML = "Year  
    to Date"; 
    } 
} 

Что я должен делать здесь?

ответ

2

Попробуйте

function Lab(obj) { 
    var a = obj.getAttribute('name'); 
    if (a != 'YtoD') { 
     document.getElementById("linechartxaxislabel").innerHTML = "Price Timeline" + "(Last" + a + ")"; 
    } else { 
     document.getElementById("linechartxaxislabel").innerHTML = "Year to Date"; 
    } 
} 

Во-первых, объект, который вы получите в не имеет яваскрипт атрибута с именем, так как это элемент DOM. Вам нужно получить доступ к атрибутам с помощью DOM API (https://developer.mozilla.org/en-US/docs/Web/API/element.getAttribute)

Во-вторых, как только у вас есть имя, это строка, поэтому вам нужно сравнить ее с String YtoD, а не ссылкой на объект.

Смежные вопросы