繁体   English   中英

将数据传递到send.php-选择选项文本和值

[英]Pass data to send.php - select option text and value

基本上我想调试一下:我有一个HTML表单和一个send.php,我可以从中提取数据,例如

 $locridicare= addslashes($_GET['liv']); 
 $locreturnare=addslashes($_GET['ret']); 
 $codlocridicare=addslashes($_GET['locridicare']); 
 $codlocreturnare=addslashes($_GET['locreturnare']);

codlocridicare应该从称为locridicare的SELECT选项中获得VALUE,而locridicare应该获得TEXT。

对于codlocreturnare和locreturnare,从其他选择中相同。

我运行的表格:

<script>
function changelivrare (objDropDown)
{
document.getElementById("liv").value = objDropDown.value; 
}


function changereturnare (objDropDown)
{
document.getElementById("ret").value = objDropDown.value; 
}
</script>

然后是形式

<select name="locridicare" id="locridicare" onchange="changelivrare(this)">
<option value=""> --- Selectaţi --- </option>
<option value="3231">Aeroport Otopeni - Bucuresti</option>
</select>
<input type="hidden" name="liv" id="liv" />

<select name="locreturnare" id="locreturnare" onchange="changereturnare(this)" >
<option value=""> --- Selectaţi --- </option>
<option value="3231">Aeroport Otopeni - Bucuresti</option>
</select>
<input type="hidden" name="ret" id="ret" />

要获取所选选项的文本,请使用:

function changelivrare(objDropDown) {
    document.getElementById("liv").value = objDropDown.options[objDropDown.selectedIndex].innerHTML;
}

objDropDown.value是所选选项的值,而不是其文本。 objDropDown.options是选项的集合,而objDropDown.selectedIndex是所选选项的位置。

我还建议您将两个功能合并为一个:

function textToHiddenInput(objDropDown, inputID) {
    document.getElementById(inputID).value = objDropDown.options[objDropDown.selectedIndex].innerHTML;
}

然后将HTML更改为:

<select name="locridicare" id="locridicare" onchange="textToHiddenInput(this, 'liv')">
...
<select name="locreturnare" id="locreturnare" onchange="textToHiddenInput(this, 'ret')" >

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM