我尝试使用javascript在我的项目上添加验证,但是如果我使用GetElementByID函数,我的javascript函数不会返回值。 所以,我的php脚本就像:
<select name="IDDep" style="width:152px" onClick="getListaDep()">
//blah blah
</select><span></span>
<div id="divDep">
重要的是onClick
我的javascript:
function getListaDep( ) {
var IDDep ;
IDDep= document.getElementById(IDDep).value;
var strURL="ajax_page/findDepTranz.php?&IDDep="+IDDep;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('divDep').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
findDepTranz.php
<?php
$IDDep = intval($_GET['IDDep']);
?>
<div>
<?php echo 'IDDep: '.$IDDep; ?>
</div>
此示例并未向我返回IDDep,但如果我改为:onClick="getListaDep(this.value)"
并在javascript中:
function getListaDep(IDDep ) {
var strURL="ajax_page/findDepTranz.php?&IDDep="+IDDep;
.... if works.
我需要返回像IDDep这样的2个值,而我的document.getElementById(IDDep).value不起作用。 有什么建议吗?
答案 0 :(得分:3)
您需要引用ID:
IDDep= document.getElementById('IDDep').value;
您还需要更改select
,以便它具有ID:
<select name="IDDep" id="IDDep" style="width:152px" onClick="getListaDep()">
^^^^^^^^^^
答案 1 :(得分:0)
尝试以下方法: 变化
IDDep = document.getElementById(IDDep).value;
到
IDDep = document.getElementById('IDDep').value; //Quoting the id
和
<select name="IDDep" style="width:152px" onClick="getListaDep()">
到
<select name="IDDep" style="width:152px" onClick="getListaDep()" id="IDDep">
然后在你的javascript中执行以下操作
document.getElementById('IDDep').addEventListener('change', function() {
//Your function here
});
//You can change 'change' to 'click' aswell if you need to
这也允许你删除onclick所以
<select name="IDDep" style="width:152px" onClick="getListaDep()" id="IDDep">
成为
<select name="IDDep" style="width:152px" id="IDDep">