2016-12-13 4 views
-1

инструментов разработчика я могу видеть мою кнопку:Как проверить, какой стиль кнопка применяет к нему НЕ РАБОТАЕТ

<input type="submit" name="ctl00$MainContent$MapUserControl$MapDefPage$CreateEditLayerPage$addAttribute" value="Add Attribute" id="ctl00_MainContent_MapUserControl_MapDefPage_CreateEditLayerPage_addAttribute" title="Click to add a new attribute to the layer" class="edit green btn spaceRight" style="float: right; display: block;"> 

Вы можете увидеть в конце стиль имеет дисплей BLOCK.

Но когда я пытаюсь проверить это в консоли:

$('addAttribute').css("display") == "block" 
false 

я получаю возвращение FALSE, когда я могу видеть, что это должно быть TRUE. Почему это? В основном я хочу проверить, скрыта ли моя кнопка или нет, поэтому я могу выполнять задачу в зависимости от того, какая из них. также пытались

$('addAttribute').is(":visible"); 
false 

Но возвращает ложь, а также. Что я делаю не так? Thanks

+4

'addAtribute' не является идентификатором, а не класс или другое в вашем входе. Это нормально? –

+4

Какой у вас селектор? нет объекта как '', чтобы выбрать класс, используя '.class', id -' # id' – Sojtin

ответ

0

Думаю, вы используете неправильный селектор. Вы используете как

$('addAttribute').css("display") == "block" 

но не любой тег, как addAttribute. Вы можете проверить, как

$('.edit.green.btn.spaceRight').css("display") == "block" 

Также вы можете проверить с идентификатором вашего входного сигнала в

0

alert($(':input.btn').css("display") == "block")
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="submit" name="ctl00$MainContent$MapUserControl$MapDefPage$CreateEditLayerPage$addAttribute" value="Add Attribute" id="ctl00_MainContent_MapUserControl_MapDefPage_CreateEditLayerPage_addAttribute" title="Click to add a new attribute to the layer" class="edit green btn spaceRight" style="float: right; display: block;">

Используйте :input селектор для выбора входа с классом, чтобы быть более точным

+0

Это свойство возвращает для всех входных тегов .... не должно использоваться – rushil

+0

@rushil on OP ничего было упоминание об этих вещах, но он может добавить класс, если захочет. – guradio

+0

теперь ans предпочтительнее после того, как вы отредактировали ... добавив еще один атрибут .btn может работать – rushil

0

if($('.edit.green.btn.spaceRight').css("display") == "block"){ 
 
    alert('yes'); 
 
}else{ 
 
    alert('no'); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<input type="submit" name="ctl00$MainContent$MapUserControl$MapDefPage$CreateEditLayerPage$addAttribute" value="Add Attribute" id="ctl00_MainContent_MapUserControl_MapDefPage_CreateEditLayerPage_addAttribute" title="Click to add a new attribute to the layer" class="edit green btn spaceRight" style="float: right; display: block;">

0

Вы можете попытаться найти на основе input элемента и его id следующим образом,

В текущем коде селектор вы имеете в виду addAttribute неверен.

if ($('input#ctl00_MainContent_MapUserControl_MapDefPage_CreateEditLayerPage_addAttribute').css("display") == "block") { 
 
    alert("Detected"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<input type="submit" name="ctl00$MainContent$MapUserControl$MapDefPage$CreateEditLayerPage$addAttribute" value="Add Attribute" id="ctl00_MainContent_MapUserControl_MapDefPage_CreateEditLayerPage_addAttribute" title="Click to add a new attribute to the layer" 
 
class="edit green btn spaceRight" style="float: right; display: block;">

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