Jquery和加载函数

时间:2011-10-11 12:49:07

标签: jquery jquery-load

我正在尝试从外部文件中获取响应。 目前在php文件中只有一个变量回显,我想在#code div中显示它。我怎么能这样做?

 $(function(){
            $('#submit').click(function(e){
               var length = $('#number').val();
               var type = $('#type').val();
               var submit = "submit";
               var url = 'public/php/codegenerator.php';
               var data = "length=" + length + "&type=" + type + "&submit=" + submit; 
               console.log(data);

               $('#code').load(url, data, function(response){
                   $(this).response.hmtl();
               });

             e.preventDefault();
            });
        });

4 个答案:

答案 0 :(得分:1)

load应该为你做。所以改变它,应该工作

$('#code').load(url, data, function() {
    alert('success');
});

答案 1 :(得分:0)

试试这个

$('#code').load(url, data, function(response){
         $(this).html(response);
});

OR

$('#code').load(url, data);

答案 2 :(得分:0)

尝试此代码和平

<div id="success"></div>
<div id="error"></div>

<script>
$("#success").load(url, data, function(response, status, xhr) {
  if (status == "error") {
    var msg = "error: ";
    $("#error").html(msg + xhr.status + " " + xhr.statusText);
  }
});
</script>

答案 3 :(得分:0)

所以,如果您的php代码正在发回内容类型“text / html”,那么您主要做正确的事情。您可以尝试在PHP代码中设置响应的内容类型。如果您无法弄清楚如何更改内容类型,或者不想知道如何更改内容类型,请使用jQuery.get()方法并将#Code元素的TEXT(而不是html)更改为$("#Code).text(yourResponse);

您也可以尝试访问xhr.responseText以查看整个响应。在找出问题时,这总是一个非常宝贵的工具:

$.ajaxSetup ({
error: function(x, e){

        alert("The Response:" + x.responseText);

});