하나씩 여러 선택 옵션을 클릭 할 때 URL을 팝업해야한다는 요구 사항이 있습니다. 그것은 하나의 옵션을 클릭하면 사용자가 일부 데이터를 제출하고 이전 html 창으로 돌아갈 수있는 새 창을 팝업해야 함을 의미합니다. 이제 사용자는 하나의 옵션 (Ctrl + 클릭)을 선택할 수 있으며 새 팝업 창을 열어야합니다. 그러나 Pop up url은 option 값을 포함하고 있습니다.여러 옵션을 클릭하면 새로운 창을 하나씩 팝업으로 선택합니다.
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();
}
}
}
}
하지만 원하는 방식으로 작동하지 :
<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>
// 자바 스크립트 기능입니다. 매번 스크립트 내에서 이전에 선택한 옵션 값을 전달합니다.
문제는 다중 선택 옵션입니다. 여러 값을 선택하면 항상 첫 번째 선택된 값이 전달됩니다. –