使用JS和JQuery替换AJAX中的字符串或html onload

时间:2015-10-30 00:21:16

标签: javascript jquery html ajax

在使用AJAX时,我在更改特定DIV标记的字符串内容时遇到问题。

出于某种原因,我可以在使用onclick功能时更改字符串内容。这有效;

<div id="demo">Will change on click? </div>

<button onclick="myFunction()">Try it</button>

<script>
    function myFunction() {
        document.getElementById("demo").innerHTML = "Yes, Successfully changes" ;
    }
</script>

然而,这不是;

<div id="demo2">Will this change?</div>
<script>
    window.onload = function() {
        document.getElementById("demo2").innerHTML = "Yes, Successfully changes" ;
    }
</script>

这两种方法都适用于页面本身,但是使用AJAX导入该页面,并且只有onclick方法才有效。尝试JavaScript和JQuery时,此问题仍然存在。我错过了什么?

5 个答案:

答案 0 :(得分:1)

尝试使用jQuery的.ajaxcomplete http://api.jquery.com/ajaxcomplete/注册事件处理程序。当AJAX请求完成时,会触发此事件,这可能就是您要查找的内容。

答案 1 :(得分:0)

使用以下方式使用Ajax更新内容

<div id="demo">Let AJAX change this text</div>

<button type="button" onclick="loadDoc()">Try it</button>

<script>
function loadDoc() {
    var xhttp = new XMLHttpRequest();

    xhttp.onreadystatechange = function() {
        if (xhttp.readyState == 4 && xhttp.status == 200) {
            document.getElementById("demo").innerHTML = xhttp.responseText;
        }
    }
    xhttp.open("GET", "ajax_info.txt", true);
    xhttp.send();
}
</script>

有关更多ajax示例,请转到以下链接。 Ajax Examples

答案 2 :(得分:0)

<script>
$(document).ready(function(){
$.ajax({
  url: "ajax_info.txt"
}).done(function( data ) {
    $("#demo").html(data);
  });

});
</script>

在就绪功能上,您可以调用ajax并更改内容

答案 3 :(得分:0)

使用jquery ready函数并在ready函数内调用函数。 像这样:

$(document).ready(function(){
  myFunction();
});

答案 4 :(得分:0)

/ * jQuery Onload字符串替换或jQuery Onload字符串更改* /

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript"> 
$(document).ready(function() {
    var strNewString = $('body').html().replace(/\On hold/g,'Processing');
    $('body').html(strNewString);
});

</script>