2016-03-19 3 views
3

Я хочу написать букмарклетную вещь, которая будет выполняться по щелчку и автозаполнять значения.Показывать скрытые поля после выбора конкретной опции

Я могу выбрать значения через

document.getElementById('component').value="IAE-Data Agent"; 
document.getElementById('component').onchange(); 

но не Потазывает скрытый fields.This является Java-код, написанный на странице после этого выберите поле, которое я думаю Потазывает поле после того, как вручную выбрать окно ,

showFieldWhen('cf_agents', 
      'component', ['IAE-Data Agent']); 

Я попытался выполнить функцию и многие другие способы, пока это поле не покажет.

Перед ручного выбора (когда поле скрыт)

<th class="field_label bz_hidden_field" id="field_label_cf_agents"> 
     <label for="cf_agents"> 
     <a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a> 
    </label> 
    </th> 

После поля показано:

<th class="field_label" id="field_label_cf_agents"> 
     <label for="cf_agents"> 
     <a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a> 
    </label> 
    </th> 

Только класс atrribute changes.I перепробовал много способов, но все еще Повсеместно сценарий я ма не в состоянии это сделать.

Когда я использую селена сценарий

Select dropdown = new Select(driver.findElement(By.id("component"))); 
    dropdown.selectByValue("IAE-Data Agent"); 

я могу видеть скрытое поле становится displayed.But это не представляется возможным, потому что я не хочу, чтобы запустить Java-приложение, чтобы сделать задачу.

Какие еще способы можно попытаться показать эти поля. Если код javascript не работает, то можно выполнить код селена через букмарклет или каким-либо другим способом сделать это.

+0

Я понял способ использования кода – Ravi

+0

document.getElementById ('field_label_cf_agents'). ClassName = "field_value"; прямое изменение имени класса – Ravi

+0

Просьба отправить ответ и «принять» его, если вы решили свою проблему, поэтому это очевидно для будущих поколений. –

ответ

0

Как атрибут класса изменений поля после выбора опции box.I были непосредственно использованы код

document.getElementById('field_label_cf_agents').className="field_value"; 

этот код непосредственно изменил имя атрибута класса и, следовательно, поле был показан.