使用jQuery为属性设置新值

时间:2012-08-03 10:42:13

标签: javascript jquery html attr

我正在尝试使用attr()设置div的自定义属性的新值。我发现它可以使用.attr( attributeName, value )来完成,但是当我尝试它时它不起作用。

以下是我感兴趣的代码部分:

$('#amount').attr( 'datamin','1000')

和具有自定义属性的 div

<div id="amount" datamin=""></div>


以下是整个例子:

$(function() {
    $( "#slider-range" ).slider({
        range: true,
        min: <?php echo $min_val;?>,
        max: <?php echo $max_val;?>,
        values: [ <?php echo $min_val;?>, <?php echo $max_val;?> ],
        slide: function( event, ui ) {
            $( "#amount" ).html( "<?php echo $currency_chk_i;?>" + ui.values[ 0 ] + " - <?php echo $currency_chk_i;?>" + ui.values[ 1 ] );

            $('#amount').attr( 'datamin','1000');

        },
        change: function(event, ui) {
            // when the user change the slider
        },
        stop: function(event, ui) {
        alert(ui.values[0]);
            // when the user stopped changing the slider

        }
    });
    $( "#amount" ).html( "<?php echo $currency_chk_i;?>" + $( "#slider-range" ).slider( "values", 0 ) +
        " - <?php echo $currency_chk_i;?>" + $( "#slider-range" ).slider( "values", 1 ) );

});


任何人都可以指出我错在哪里或其他方式吗?

2 个答案:

答案 0 :(得分:46)

适合我的工作

请参阅此处的示例。 http://jsfiddle.net/blowsie/c6VAy/

确保您的jquery位于$(document).ready函数或类似函数内。

您还可以使用jquery data

来改进代码
$('#amount').data('min','1000');

<div id="amount" data-min=""></div>

更新,

这里的完整代码(相当多)的一个工作示例。 http://jsfiddle.net/blowsie/c6VAy/3/

答案 1 :(得分:30)

在分配值

后,你必须检查attr

LiveDemo

$('#amount').attr( 'datamin','1000');

alert($('#amount').attr( 'datamin'));​