追加没有选择器

时间:2010-05-07 14:20:58

标签: jquery append

是否可以在不指定选择器的情况下进行追加

所以在html中我有一个任意元素,在里面我调用一个将内联追加内容的函数

所以html看起来像这样

  <!-- stuff before -->
    <fieldset>
        <script type="text/javascript">
                $(document).ready(function(){
                    get_content();
                });
        </script>
    </fieldset>
  <!-- stuff after -->

然后在一个加载的js文件中,我有像这样的get_content()函数

  function get_content(){
        $.append('<div id="some_id"></div>');
  }

目前我收到错误,说附加不是功能

3 个答案:

答案 0 :(得分:0)

它不是很漂亮,但我想你可以做到这一点;

function get_content(){
  document.write($('<div><div id="some_id"></div></div>').html());
}

答案 1 :(得分:0)

在过去,这将由document.write()

完成
  <!-- stuff before -->
    <fieldset>
        <script type="text/javascript">
           document.write(get_content());
        </script>
    </fieldset>
  <!-- stuff after -->

function get_content(){
  return '<div id="some_id"></div>';
}

但真的document.write不是jQuery的工作方式。试试这个:

function get_content(){
  return 'your real content';
}
$(document).ready(function(){
    $('#some_id').html(get_content());
});


  <!-- stuff before -->
    <fieldset>
       <div id="some_id"></div>
    </fieldset>
  <!-- stuff after -->

答案 2 :(得分:0)

JavaScript不会按照您在此处尝试的方式编写代码。 JavaScript与内容分开并与整个文档一起使用,因此将JavaScript放在您希望它出现的标记中将不会执行任何操作,除非您使用document.write(...),这被认为是您可以在JavaScript中使用的最糟糕的事情。

相反,你应该这样做:

您的标记看起来像这样:

<!-- stuff before -->
<fieldset id="elementToAppendTo">

</fieldset>
<!-- stuff after -->

然后你的脚本看起来像这样(它可以去任何地方)

<script type="text/javascript">
$(document).ready(function(){
    get_content();
});
</script>

然后您可以使用get_content()功能附加内容。

function get_content(){
    $("#elementToAppendTo").append('<div id="some_id"></div>');
}