php和getvalue.php听到getvalue.php是通过ajax调用的。
Index.php的内容是....
function getthis(str) {
var xhttp;
if (str == "") {
document.getElementById("getthis").innerHTML = "";
return;
}
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("getthis").innerHTML = this.responseText;
}
};
xhttp.open("GET", "get.php?str="+str, true);
xhttp.send();
}
以上脚本是ajax调用....
和index.php内容如下
<div id="abc">
<select name="abx" onChange="getthis(this.value)">
<option value="1" data-id="1">1</oprion>
<option value="2" data-id="2">2</option>
</select>
</div>
<div id="getthis">
</div>
现在在get value.php中跟随代码
<?php
$_GET['str'];
?>
<input type="text" value="<?php echo $_GET['str']; ?>" class="thisis">
现在在index.php上通过以下脚本我希望通过此代码从keyup事件的输入框中获取值但是我没有得到任何值为什么......?
<script type="javascript">
$(document).ready(function(){
$('#getthis input.thisis').keyup(function(){
var abc = $(this).val();
alert(abc);
});
});
</script>
答案 0 :(得分:0)
在加载时执行此操作时,dom元素不在此处。一旦处理了Ajax请求,就会填充它们。
不要只是尝试绑定元素onload,而是在ajax请求完成后尝试。
if (this.readyState == 4 && this.status == 200) {
document.getElementById("getthis").innerHTML = this.responseText;
functionbind();
}
var functionbind = function(){
$('#getthis input.thisis').keyup(function(){
var abc = $(this).val();
alert(abc);
});
$('select ').keyup(function(){
abc = $(this).val();
alert(abc);
});
}