Ajax,使用div标签设置javascript值

时间:2012-02-17 18:10:53

标签: javascript ajax html tags

我可以使用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>

3 个答案:

答案 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();
                 })