J'essaie de définir une nouvelle valeur d'un attribut personnalisé d'un div en utilisant attr()
. J'ai découvert que cela peut être fait en utilisant .attr( attributeName, value )
, mais lorsque j'essaie, cela ne fonctionne pas.
Voici la partie de mon code qui m'intéresse:
$('#amount').attr( 'datamin','1000')
et le div associé à l'attribut personnalisé est
<div id="amount" datamin=""></div>
Voici l'exemple complet:
$(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 ) );
});
Quelqu'un peut-il indiquer où je me trompe ou quelle autre solution?
Fonctionne bien pour moi
Voir exemple ici. http://jsfiddle.net/blowsie/c6VAy/
Assurez-vous que votre jquery est à l'intérieur de la fonction $(document).ready
ou similaire.
Vous pouvez aussi améliorer votre code en utilisant jquery data
$('#amount').data('min','1000');
<div id="amount" data-min=""></div>
Mise à jour,
Un exemple de travail de votre code complet (à peu près) ici. http://jsfiddle.net/blowsie/c6VAy/3/
Cela fonctionne, vous devez vérifier attr après avoir assigné une valeur
$('#amount').attr( 'datamin','1000');
alert($('#amount').attr( 'datamin'));