2016-07-22 12 views
0

У меня есть требование, чтобы всплывать URL-адрес при нажатии на несколько вариантов выбора по одному. Это означает, что когда я нажимаю один вариант, он должен открыть новое окно, где пользователь может отправить некоторые данные и вернуться в предыдущее html-окно. Теперь снова пользователь может выбрать один из вариантов (Ctrl + клик), и он должен открыть новое всплывающее окно. Но URL-адрес Pop up содержит значения параметра.Множественный выбор для всплывающего окна в новом окне при нажатии на опции по одному

функция
<select multiple="multiple" id="FldSel" name="FldSel" size=15 onchange="callInstrumentField();" >                 
    <option isred= "A" value="1">1</option> 
    <option isred= "A" value="2">2</option> 
    <option isred= "A" value="3">3</option>                        
    <option isred= "A" value="4">4</option> 
</select> 

// Javascript является:

function callInstrumentField() 
{ 

     var url; 
     var w; 
     var InstAct; 
     var InstName = document.ATTForm.instname.value.replace(/\s/gi,""); 
     var sel = document.getElementById('FldSel'); 
     var selected = sel.options[sel.selectedIndex]; 
     var FldSelVel = sel.value; 
     var FldType = selected.getAttribute("isred"); 
     var x2 = document.ATTForm.InstrAction.value; 

     if(InstName=="") 
      { 
      alert("Please Enter Instrument Name"); 
      document.getElementById("instname").focus(); 
      return false; 
     } 
     else{ 
      if(x2=="UPDATE") 
       { 
       InstAct= 'SELECT'; 
      } 
      else 
       { 
       InstAct=x2; 
      } 
     //var x2="SELECT"; 
      if (FldType == "Dropdown") 
       { 
       url = '?func=lsdms.ViewInstrumentFldSel&InstrAction='+InstAct+'&InstruMntNo='+FldSelVel; 
       w = window.open(url,"","height=340,width=680,scrollbars=yes,resizable=yes,menubar=no,toolbar=yes,status=yes"); 

       if (w.focus) 
        { 
        w.focus(); 
       } 

      } 
     } 
} 

Но ее не работает желаемым образом. Каждый раз, когда он передает ранее выбранные значения параметров внутри скрипта.

ответ

1

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

Если вы отлаживать с помощью хромированных инструментов и добавить контрольную точку на линии

var FldSelVel = sel.value; 

вы должны быть в состоянии опрашивать значение.

Update


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

for (x=0;x< sel.options.length;x++) 
    { 
    if(sel.options[x].selected) 
     { 
     alert(sel.options[x].value);    
     } 
    } 

Если вам нужно, чтобы вызвать событие на кнопку вы можете использовать JQuery

$('#FldSel').on('change', function() { 
    var value = $(this).val(); 
    alert(value); 
}); 

Вместо e alert теперь можно поместить вызов для отображения всплывающего окна.

+0

Проблема заключается в множественном выборе. Когда я выбираю несколько значений, он всегда передает первое выбранное значение. –

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

  • Нет связанных вопросов^_^