Javascript js正在将远程div内容获取到变量中

Javascript js正在将远程div内容获取到变量中,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我有一个网页,我把我的Web服务任务的状态。看起来是这样的: <body> <div id="size"> <c:out value="${size}"/> </div> <div id="isRunning"> <c:out value="${isRunning}"/> </div> <div id="intIsRunning">

我有一个网页,我把我的Web服务任务的状态。看起来是这样的:

<body>
    <div id="size">
        <c:out value="${size}"/>
    </div>
    <div id="isRunning">
        <c:out value="${isRunning}"/>
    </div>
    <div id="intIsRunning">
        <c:out value="${intIsRunning}"/>
    </div>
    <div id="status">
        <c:out value="${status}"/>
    </div>
</body>
$(document).ready(function() {
  var fetch = setInterval(loadStatus, 500);
  $('.progress .bar').progressbar();

  function loadStatus() {
    $.get('/status', function (data) {
      var $data = $(data), //turn ajax response (string) into JQuery collection
        isRunning = $data.find('#isRunning').text(),
        intIsRunning = $data.find('#isRunning').text(),
        size = $data.find('#isRunning').text(),
        status = $data.find('#isRunning').text();

      //Do something with the variables


      if (isRunning == 0) {
        clearInterval(fetch);
      }
    });
  }
});
只要running为true,该脚本就应该在我的状态页面中查询上述值,并将状态放入我的进度条中。如果running为false,这个脚本应该停止,但现在我无法提取这些变量。有人能提供帮助吗? 编辑: 我是这样做的:

<script type = text/javascript>
            $(document).ready(function () {
                $('.progress .bar').progressbar();
                var fetch = setInterval(loadStatus, 500);
                var isRunning;
                var status;

                function loadStatus() {
                    $.get('/status', function (data) {
                        var remoteContent = $(data);
                        isRunning = parseInt($(remoteContent[11]).html());
                        status = parseInt($(remoteContent[13]).html());

                        if (isRunning == 0) {
                            status = 100;
                            clearInterval(fetch);
                            $("#progBar").hide();
                            $("#buttonDiv").hide();
                            $("#succesMessage").show();
                            //location.reload();
                        }

                        $('.progress .bar').attr("data-transitiongoal", status.toString()).progressbar();
                        console.log("isRunning: " + isRunning + " status: " + status + "%");
                    });
                }}
            );
        </script>

我将在本周晚些时候查看发布的答案

如果您尝试这样的方法会怎么样:

<body>
    <div id="size">
        <c:out value="${size}"/>
    </div>
    <div id="isRunning">
        <c:out value="${isRunning}"/>
    </div>
    <div id="intIsRunning">
        <c:out value="${intIsRunning}"/>
    </div>
    <div id="status">
        <c:out value="${status}"/>
    </div>
</body>
$(document).ready(function() {
  var fetch = setInterval(loadStatus, 500);
  $('.progress .bar').progressbar();

  function loadStatus() {
    $.get('/status', function (data) {
      var $data = $(data), //turn ajax response (string) into JQuery collection
        isRunning = $data.find('#isRunning').text(),
        intIsRunning = $data.find('#isRunning').text(),
        size = $data.find('#isRunning').text(),
        status = $data.find('#isRunning').text();

      //Do something with the variables


      if (isRunning == 0) {
        clearInterval(fetch);
      }
    });
  }
});

注意,变量都是字符串。您可以使用status=parseIntstatus转换为数字,也可以使用isRunning=isRunning!='例如,false。请注意,对于javascript的隐式类型转换,这通常是不必要的。

您的loadStatus函数永远不会被调用。“获取url”的空间和哈希似乎无效??要读取div的内容并获取其文本,可以使用myText=$divstatus.text为什么您认为从未调用过它?我从里面得到日志。我以为get/url divFromUrl会给我这个div的内容。它每500毫秒被调用一次:var fetch=setIntervalloadStatus,500@SokPomaranczowy,只有load函数通过在URL参数中提供选择器来支持页面片段的加载,get没有这样的支持。哦,对不起,我错过了。我的错@GET用于使ajax调用在页面中加载外部资源,而不是从DOM中选择元素。api.jquery.com/jquery.get/