使用<p>标记</p>包装JQuery函数结果

时间:2012-04-17 20:06:14

标签: javascript jquery html tags

嗨,我有一个交互式图形功能。由于一些限制,每次用户使用以下方式与图形交互时,我都必须删除该图:

$("button").click(function () {
     $("p").empty();
 });

然而,我想通过调用(在protovis中)来重新生成图形:

drawHistogram(){
var w = 420
var h = 300
var vis = new pv.Panel()
.width(w)
.height(h)
.margin(20);
//add data into the visualization
vis.render();
}

在JQuery中。但是,现在此图形未被<p>标记包围,因此当我单击按钮时,此迭代中不会发生任何事情。如何使用drawHistogram()标记围绕<p>来电?谢谢!

4 个答案:

答案 0 :(得分:0)

如果drawHistogram()是PHP函数:

<?php
    function drawHistogram() {
?>

    <P>

<?php

    // Draw Histogram code goes here

?>

    </p>

<?php
    }
?>

答案 1 :(得分:0)

vis.erender();渲染只是访问它并使用jQuery http://api.jquery.com/wrap/

包装它
<div class="vis-rendered">
  <div class="inner">Vis Image</div>
</div>

$('.vis-rendered').wrap('<p />');

结果:

<p>
  <div class="vis-rendered">
    <div class="inner">Vis Image</div>
  </div>
</p>

答案 2 :(得分:0)

您可以尝试使用jQuery .wrap()将元素包装在<p>元素中。

如果展开的.inner元素看起来像这样:

<div class="container">
  <div class="inner">Hello</div>
  <div class="inner">Goodbye</div>
</div>

然后在渲染元素上使用$('.class').wrap('<p>')

$('.inner').wrap('<p class="new" />');

包装结果如下:

<div class="container">
  <p class="new">
    <div class="inner">Hello</div>
  </p>
  <p class="new">
    <div class="inner">Goodbye</div>
  </p>
</div>

答案 3 :(得分:0)

为什么没有容器元素,每次调用drawHistogram()时,在该方法中将结果包装在"<p>"元素中。

在这里,看看这个例子是否有帮助。

http://jsfiddle.net/BP5hb/

最佳,