基本上我正在尝试调试这个:我有一个HTML表单和一个send.php,我可以从中提取数据,如
$locridicare= addslashes($_GET['liv']);
$locreturnare=addslashes($_GET['ret']);
$codlocridicare=addslashes($_GET['locridicare']);
$codlocreturnare=addslashes($_GET['locreturnare']);
codlocridicare应该获得VALUE,而locridicare应该从名为locridicare的SELECT选项中获取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" />
答案 0 :(得分:0)
要获取所选选项的文字,请使用:
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')" >