I've set up a simple jQuery UI ProgressBar:
<script type="text/javascript"> $(function() { $("#progressbar").progressbar({ value: 35 }); }); </script> <div id="progressbar"> </div>
Among other things, I'd like to display some text in the progress-bar (for starters, I'd just use the "value").
I can't seem to get this to work.
Bonus Question: How do I format the displayed text (e.g. color, alignment)?
Syntax of the progressbar() method For example $( “#elementid” ). progressbar({ value : 30 }), here value is an option and 30 is the provided value for value option. disabled – The disabled option, if set to true, then it disables the progress bars, and false is a default value of disabled.
$ (selector, context). progressbar (options) Method. The progressbar (options) method declares that an HTML element can be managed in the form of a progress bar. The options parameter is an object that specifies the appearance and behavior of progress bars.
The first function calls an action via ajax on my controller and passes two parameters. Use the ajaxStart to start your progress bar code. $(document). ajaxStop(function(){ // hide the progress bar $("#progressDialog").
Instead of introducing another element (span
) and a new style, leverage what is already there like this:
var myPer = 35; $("#progressbar") .progressbar({ value: myPer }) .children('.ui-progressbar-value') .html(myPer.toPrecision(3) + '%') .css("display", "block");
The css("display", "block")
is to handle the case where the value is 0 (jQuery UI sets a display: none
on the element when the value is 0).
If you look at the source of The demo, you'll notice that a <div class="ui-progressbar-value">
is added. You can simply override this class in your own CSS, like:
.ui-progressbar-value { font-size: 13px; font-weight: normal; line-height: 18px; padding-left: 10px; }
The way I did it was:
<div class="progressbar"><span style="position:absolute; margin-left:10px; margin-top:2px>45% or whatever text you want to put in here</span></div>
You can adjust the margin-top and margin-left so that the text is in the center of the progress bar. Then you apply the progressbar plugin for the elements which have class progressbar in the javascript section of the page
Hope this help
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With