【问题标题】:Jquery Ajax Get DivjQuery Ajax 获取 Div
【发布时间】:2014-02-13 00:04:31
【问题描述】:

我在使用 ajax 响应时遇到问题。

我的 .php 文件生成一个表格

    <div class="result">
        <tr class="distr">
           <td><input name="somename" value="value"></input</td>
           <td>..more input</td>
           ...more <tds>
       </tr>
    <div>

.js 文件

//...unrelated code up here

$.ajax({
    type: "POST",
    url: "myphpfile.php",
    data: "data that creates table",
    success: function(r) {
        var getdata = $(r).filter(".result");
        console.log(getdat);
    }
});

我的主文件有

<table class="tbl">
   <tr>
       <td><input></input></td>
       ...
   </tr>
</table>

我正在尝试将由我的 php 文件生成的表附加到

<table class="tbl">

但我得到的回应只是

<input>...</input>
<input>...</input>
some other div children here
<input>...</input>
some text

而不是所有的东西

<div class="result">

谁能向我解释这是如何工作的。 我也试过 .find(".result") 而不是 .filter() 哦,我不希望那个 div 返回,只是它里面的表格。

对不起,如果这很难理解,我正在打字时这一切看起来很奇怪。

谢谢

【问题讨论】:

  • 当你可以使用table时,你为什么要把tr放入div
  • 是的,很抱歉它在桌子上,我只是忘了放在这里。
  • 啊,我又检查了一遍,是的,我那里没有桌子。我猜它跳过了 和 因为没有一个表,它现在可以工作了,不假思索地使用了一个 Div,所以很容易过滤它,但没想到这个结果,现在可以工作了,谢谢
  • 我很高兴它解决了。添加了一个答案,以便您接受它并将问题标记为已解决。

标签: jquery ajax filter find response


【解决方案1】:

将您的div 替换为table,这样它将是正确的HTML。

【讨论】:

    【解决方案2】:

    尝试使用jQuery.get ()

    $.get( "myphpfile.php", { param1: "p1", param2: "p2" } )
        .done(function( data ) {
        var content = $( data ).find( ".result" );
    });
    

    更新:

    $(".result").load("myphpfile.php .result", { param1: "p1", param2: "p2" })
    

    【讨论】:

    • 我已经尝试过了,由于某种原因,当我使用 .find() 时它没有返回任何内容。
    • 请检查更新的答案。我在我的项目中使用了它。希望这有效
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签