.text没有获取所有文本,但在控制台中工作

时间:2015-01-02 19:31:34

标签: javascript jquery

我正在尝试从表格单元格类中获取文本。该脚本在控制台中运行良好。但是,当我实现代码时,它只抓取部分文本。

<script type="text/javascript">
    var getCustomText = $( "td.product-title-cell" ).text();
    $(function () {
        $('#idToPutCustomText').val(getCustomText);
    });
</script>

TD我正在尝试获取文字

<td class="product-title-cell"> <a href="/products/yellow-unicorn-award-trophy">Yellow Unicorn Award Trophy - 2014 / The Weird Animal Awards / Presented To: adsf / For: asdf2 / Additional Text: asdf3</a> </td>

我实际收到的文字

Yellow Unicorn Poo Trophy - 2014 / The Weird Animal Awards

备注

&#39;提交给&#39;之后的所有文本都是从某个地方调用的。我还没弄清楚。这使我相信在我的脚本加载后发生的调用正在发生。

我如何尝试让我的脚本最后加载

  • 我把它放在关闭身体标签之前和之后。
  • 我已将代码放入其自己的文件中并使用它进行调用。脚本被调用,但它没有得到任何文本。

    var theScript = document.createElement("script");
    theScript.setAttribute("type","text/javascript");
    theScript.setAttribute("src","//www.mysite.com/script.js");
    document.getElementsByTagName("head")[0].appendChild(theScript);
    

问题

  • 还有其他原因导致文本被截断除外 它最后加载了吗?

  • 如果没有,我的脚本绝对可以加载的确切方式 持续多久?

3 个答案:

答案 0 :(得分:1)

这是在jQuery中使用document.ready的重点。它等待所有DOM元素都被加载,然后执行脚本:

$( document ).ready(function() {
    var getCustomText = $( "td.product-title-cell" ).text();
    $('#idToPutCustomText').val(getCustomText);
});

答案 1 :(得分:0)

您需要在准备好的包装器中加载所有jQuery操作,如下所示:

$(function(){
  // jQuery now available
  var getCustomText = $( "td.product-title-cell" ).text();
  $('#idToPutCustomText').val(getCustomText);
);

你已经在那里中途了......你刚离开了第一行:)

答案 2 :(得分:0)

这有效http://jsfiddle.net/mpwzu78w/

您必须选择链接。您可以为链接指定一个类或ID。

var getCustomText = $("a").text();

alert(getCustomText);