UNPKG

jqwidgets-scripts-custom

Version:

jQWidgets is an advanced jQuery, Angular 7, Vue, React, ASP .NET MVC, Custom Elements and HTML5 UI framework.

63 lines (56 loc) 2.92 kB
import React from 'react'; import ReactDOM from 'react-dom'; import JqxProgressBar from '../../../jqwidgets-react/react_jqxprogressbar.js'; import JqxButton from '../../../jqwidgets-react/react_jqxbuttons.js'; import JqxCheckBox from '../../../jqwidgets-react/react_jqxcheckbox.js'; class App extends React.Component { componentDidMount() { let renderText = (text) => { return '<span class="jqx-rc-all" style="background: #ffe8a6; color: #e53d37; font-style: italic;">' + text + '</span>'; }; this.refs.button.on('click', () => { let value = $('#ValueInput')[0].value; this.refs.horizontalProgressBar.value(value); this.refs.verticalProgressBar.value(value); }); this.refs.checkbox.on('change', (event) => { this.refs.horizontalProgressBar.showText(event.args.checked); this.refs.verticalProgressBar.showText(event.args.checked); }); this.refs.customtextcheckbox.on('change', (event) => { if (event.args.checked) { this.refs.horizontalProgressBar.setOptions({ renderText: renderText }); this.refs.verticalProgressBar.setOptions({ renderText: renderText }); } else { this.refs.horizontalProgressBar.setOptions({ renderText: null }); this.refs.verticalProgressBar.setOptions({ renderText: null }); } }); } render() { return ( <div style={{ height: 300 }}> <div style={{ marginTop: 10 }}>Horizontal</div> <JqxProgressBar ref='horizontalProgressBar' width={250} height={30} value={50} /> <div style={{ marginTop: 10 }}>Vertical</div> <JqxProgressBar ref='verticalProgressBar' style={{ marginTop: 10, overflow: 'hidden' }} width={30} height={250} value={50} orientation={'vertical'} /> <br /> <div>Enter a value between 0 and 100</div> <div style={{ marginTop: 5, float: 'left' }} > <input id='ValueInput' type='text' style={{ marginTop: 5, float: 'left' }} /> <JqxButton ref='button' style={{ marginTop: 3, marginLeft: 3, float: 'left' }} value='Update' /> </div > <div style={{ clear: 'both' }}></div> <div style={{ marginTop: 5, float: 'left' }} > <JqxCheckBox ref='checkbox' width={180} style={{ marginTop: 20 }} value='Show Progress Text' /> <JqxCheckBox ref='customtextcheckbox' width={180} style={{ marginTop: 20 }} value='Custom Progress Text' /> </div > </div> ) } } ReactDOM.render(<App />, document.getElementById('app'));