将属性值添加到HTML标记,其中value等于HTML标记的内容

时间:2013-05-10 21:02:50

标签: php jquery html

我发现了许多类似的问题,但没有一个对我有用。 这是我的情况: 我有一个span,这个span的内容是Jquery动态插入的一个数字。 这个相同的span有一个属性,我希望这个属性的值等于数字。

我试图将数字放在一个变量中然后通过.qutr添加到Jquery,但没有运气。这是代码:

<script>

var value= $('#min').html();
$('#min').attr('data-category', value);

</script> 


<span class="filter" data-category="" id="min"></span>

任何指针都将不胜感激!谢谢:))

3 个答案:

答案 0 :(得分:0)

在渲染HTML标记之前,您正在渲染脚本。

你必须在jQuery $(document).ready()周围包装javascript,以便在DOM准备好后触发代码,或者在呈现HTML之后将其放入。

<script>

$(document).ready(function() {
    var value= $('#min').html();
    $('#min').attr('data-category', value);
});

</script> 


<span class="filter" data-category="" id="min"></span>

答案 1 :(得分:0)

working example

添加了jquery watch plugin ,为了捕获内容更改,可能存在更好的解决方案,但是当您使用jquery动态更改内容时这是有效的

不要忘记清除旧内容

$('#min').html('');

插入新

之前
$('#min').html('new content');

确保 watch()功能启动

答案 2 :(得分:0)

非常感谢您的帮助!我终于搞清楚了。 好的,这就是我如何解决它。这可能比我原来的问题更具体,但也许它可以帮助其他人:

首先,我使用Jquery UI滑块的change事件来检测对滑块手柄所做的任何更改:

$( "YOURSLIDER-DIV-SPAN-WHATEVER-ID-CLASS" ).slider({
change: function( event, ui ) {}
});

然后使用value方法,我将滑块手柄的值放在一个变量中。 (因为我使用了一个范围滑块,我有2个这样的顶部手柄,一个用于底部)

var value = $( "YOURSLIDER-DIV-SPAN-WHATEVER-ID-CLASS" ).slider( "values", 0 );
var value = $( "YOURSLIDER-DIV-SPAN-WHATEVER-ID-CLASS" ).slider( "values", 1 );

然后我使用.attr将变量添加到底部和顶部滑块手柄:

$('#min').attr('data-category', bottom_value);
$('#max').attr('data-category', top_value);