-1

我正在尝试从返回数据的 jquery 中选择一个元素。字符串正在返回,但是当我尝试从返回的 html 字符串中选择一个元素时,选择始终为空。这是一个加载有greasemonkey 的用户脚本。

refresh();

function refresh(___id,___action,___page){
            $.post("http://www.example.com", {auction_id:___id,action:___action,page:___page}, function(bidpage){
            var auction_id = $("#auction_id", bidpage).val();
            console.log(auction_id);
});

这篇文章返回这个数据

    <html><head></head><body><input type="hidden" name="auction_id" id="auction_id" value="8583949"></body></html>

auction_id 始终为空。找不到任何解决方案。谢谢你的帮助。

4

2 回答 2

0

您可以尝试将您的帖子数据添加到 div:

<div id="appendpostdatahere"></div>


function refresh(___id,___action,___page){
  $.post("http://www.example.com", {auction_id:___id,action:___action,page:___page}, 
    function(bidpage){
      $('#appendpostdatahere').html(bidpage);
      var auction_id = $('#auction_id).val();
      console.log(auction_id);
    });
}
于 2013-06-10T10:53:12.580 回答
0

这是因为你得到bidpage了字符串。您需要先将其转换为 HTML:

var auction_id = $("#auction_id", $( bidpage ) ).val();

由于 jQuery API[context]应该是 DOM Element、Document 或 jQuery。

评论:

看起来像 jQuery 条带<html><body>元素,所以你需要使用:

var auction_id = $( bidpage ).val();
于 2013-06-10T10:15:57.887 回答