我可以使用ajax轻松设置div标签。但是我想使用ajax设置javascript值。我曾尝试使用javaScriptVariable = div.innerHTML
读取div标签,但它是空白的。
有人可以帮忙吗?提前致谢。
<html>
<head>
<title>Log In</title>
<!-- script tag for ajax jquery -->
<link href='style.css' type="text/css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function()
{
//Get Data ajax function
$.post(
'getData.php',
{
},
function(response)
{
$('#name').html($('#1' , response).html());
$('#sname').html($('#2' , response).html());
})
return false;
})
var x;
x = name.innerHTML;
document.write(x);
</script>
</head>
<body>
答案 0 :(得分:1)
如果你没有将值传递给jquery html()方法,它将返回当前值:
var x = $('#name').html();
document.write(x);
答案 1 :(得分:1)
这是因为这两行在脚本加载后立即执行。我假设这个元素此时可能是空的。
x = name.innerHTML;
document.write(x);
当ajax调用回来时,您需要设置x
。
$(document).ready(function()
{
//Get Data ajax function
$.post(
'getData.php',
{
},
function(response)
{
$('#name').html($('#1' , response).html());
$('#sname').html($('#2' , response).html());
var x = $('#name').html();
document.write(x);
})
return false;
});
答案 2 :(得分:1)
您遇到问题,因为您没有在任何地方定义变量name
。
为什么还要打扰div呢?直接去var:
var x;
// ...
function(response)
{
$('#name').html($('#1' , response).html());
$('#sname').html($('#2' , response).html());
//this will set x, you can do this instead of, or in addition to the above
x = $('#1' , response).html();
})