【问题标题】:How to load data from external file with jQuery如何使用jQuery从外部文件加载数据
【发布时间】:2009-07-19 17:26:05
【问题描述】:

我正在尝试在 jQuery 中使用 AJAX 将内容加载到 div,但是,它严重失败:

这里是javascript:

$(document).ready(function() {
  $('#webdev').hide();
     $("#apply-webdev").click(function() {
        var form = $("#webdev");
        var formContent = form.find("#webdev");
        form.slideToggle();
        $.ajax({
            url: "api.php?do=get_form_webdev",
            cache: false,
            success: function(data) {
                form.html(data.params);
        },
        dataType: "json"
      });
  });
});

这是 HTML:

<div class="rbutton"><button title="Apply for position" id="apply-webdev" onclick="load_webdev_form()">&nbsp;Apply&nbsp;</button></div>
    <div id="webdev">
    <fieldset><legend>Apply for position</legend><div style='padding:10px; text-align:center'><img src='/images/load.gif'/></div></fieldset>
    </div>

我做错了什么?

编辑

以下是新代码,基于此线程中给出的答案:

$(document).ready(function() {
    $('#webdev').hide();
    $("#apply-webdev").click(function() {
        $("#webdev").slideToggle();
        $("#webdev").load("api.php?do=get_form_webdev");
    });
    $('#webdevcancel').click(function()
        {
            $('#webdev').hide('slow');
        }
    );
    $('#webdevsave').click(function()
        {
        $('#webdev').block({ 
        message: '<h1>Processing...</h1><img src="/images/load.gif" /><br /><br />', 
        css: { border: '3px solid #a00' } 
    });
        }
    );
});

【问题讨论】:

  • var formContent = customize.find("#webdev");
  • @Lior,我刚刚修复了这个问题,我的脚本中的原始内容是自定义的,但我让它更通用,所以我将它重命名为 form。
  • 您能否举例说明 data.Params 中返回的内容。如果您可以通过 Firefox+Firebug 获得价值,那将是最好的。会不会是 data.Params 未定义?
  • @Chris,我正在尝试,但 Firebug 不断使 Firefox 崩溃:/

标签: jquery ajax html load


【解决方案1】:

在 jQuery 中将内容加载到元素中更简单的方法是 load method:

$("#webdev").load("api.php?do=get_form_webdev");

【讨论】:

【解决方案2】:

在下面的成功函数中,你不应该使用 form.html(data.params) 而不是 formContent.html(data.params) 吗?

成功:函数(数据){ formContent.html(data.params); },

【讨论】:

  • 已修复,但仍未加载外部内容
【解决方案3】:

“严重失败”是什么意思?
我试图将 dataType 设置为 html 并使用不带参数的数据,例如form.html(data.);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多