1

我是 jQuery 新手,我使用了这段代码,但它不起作用:

<script type="text/javascript" src="jquery.js" ></script>
<script>
    $(document).ready(function(){
        $("#add_cl").click(function(){
            $("#formtag").load("main.php");
        });
    });
</script>  

单击id="add_cl"想要像ajax一样加载main.php的按钮。#formtag单击它时,它将main.php在 Dreamweaver 中以实时视图显示页面,但在 Chrome 和 Firefox 中则不显示。

4

3 回答 3

1
  • 我想你正在使用 Chrome。您应该使用 Xampp 之类的本地服务器来使其在本地工作。或者将其上传到您的在线服务器进行测试。应该管用!
  • 而不是使用localhosttry :127.0.0.1
  • 由于同源策略或与之相关的原因,Chrome 使用 AJAX 解决了一个错误,所以不要生气并使用其他浏览器。PS:我使用 XAMPP 和 Chrome,AJAX 效果很好。希望能帮助到你

与您的评论相关:
要在同一元素中加载不同的页面,请尝试使用该data属性来存储您的 URL:

<button class="loader" data-loadpage="main.php"> Load main.php </button>
<button class="loader" data-loadpage="about.php"> Load about.php </button>
<button class="loader" data-loadpage="contact.php"> Load contact.php </button>
$(document).ready(function(){
    $(".loader").click(function(){
        $("#formtag").load( $(this).data('loadpage') );
    });
});

此外,您还可以尝试.empty()从您的#formtag
$("#formtag").empty().load( $(this).data('loadpage') );

于 2012-09-16T19:19:00.893 回答
0

http://jsfiddle.net/bozdoz/uZ5XS/

HTML:

<span id="load">Click to Load content</span>
<div id="test"></div>
<div id="loadingGif">LOADING GIF!!!!</div>​

脚本:

$('#load').click(function() {
    $('#test').html('');
    $('#loadingGif').show();
    $('#test').load('http://fiddle.jshell.net/bozdoz/2XgVd/show/ a', function() {
        $('#loadingGif').hide();
    });
});​
于 2012-09-16T19:24:23.063 回答
0

回调函数

如果提供了“完成”回调,则在执行后处理和 HTML 插入后执行。回调会为 jQuery 集合中的每个元素触发一次,并依次设置为每个 DOM 元素。

<script type="text/javascript" src="jquery.js" ></script>
<script>
    $(document).ready(function() {
        $("#add_cl").click(function() {
            $("#formtag").load("main.php", function(response, status, xhr) {
                if (status == "error") {
                    var msg = "Sorry but there was an error: ";
                    alert(msg + xhr.status + " " + xhr.statusText);
                }
            });
        });
    });​
</script> 

当您在浏览器上进行测试时,还请检查“main.php”是否仍与该页面的 html 位于同一文件夹中?您还可以通过添加回调函数并记录服务器的响应来检查 ajax 错误

于 2012-09-16T19:35:04.330 回答