145 lines
5 KiB
HTML
145 lines
5 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7"><![endif]-->
|
||
|
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8"><![endif]-->
|
||
|
<!--[if IE 8]><html class="no-js lt-ie9"><![endif]-->
|
||
|
<!--[if gt IE 8]><!--><html class="no-js"><!--<![endif]-->
|
||
|
<head>
|
||
|
<meta charset="utf-8">
|
||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||
|
<title>Selectize.js Demo</title>
|
||
|
<meta name="description" content="">
|
||
|
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
|
||
|
<link rel="stylesheet" href="css/normalize.css">
|
||
|
<link rel="stylesheet" href="css/stylesheet.css">
|
||
|
<script src="js/jquery.js"></script>
|
||
|
<script src="../dist/js/standalone/selectize.js"></script>
|
||
|
<script src="js/index.js"></script>
|
||
|
<style type="text/css">
|
||
|
.selectize-control::before {
|
||
|
-moz-transition: opacity 0.2s;
|
||
|
-webkit-transition: opacity 0.2s;
|
||
|
transition: opacity 0.2s;
|
||
|
content: ' ';
|
||
|
z-index: 2;
|
||
|
position: absolute;
|
||
|
display: block;
|
||
|
top: 12px;
|
||
|
right: 34px;
|
||
|
width: 16px;
|
||
|
height: 16px;
|
||
|
background: url(images/spinner.gif);
|
||
|
background-size: 16px 16px;
|
||
|
opacity: 0;
|
||
|
}
|
||
|
.selectize-control.loading::before {
|
||
|
opacity: 0.4;
|
||
|
}
|
||
|
</style>
|
||
|
</head>
|
||
|
<body>
|
||
|
<div id="wrapper">
|
||
|
<h1>Selectize.js</h1>
|
||
|
<div class="demo">
|
||
|
<h2>State / City Selection</h2>
|
||
|
<p>A demonstration showing how to use the API to cascade controls for a classic state / city selector.</p>
|
||
|
<p><strong>Note:</strong> The API for fetching cities is a little spotty, so if it fails to list cities, that's the problem.</p>
|
||
|
<div class="control-group">
|
||
|
<label for="select-beast">State:</label>
|
||
|
<select id="select-state" placeholder="Pick a state...">
|
||
|
<option value="">Select a state...</option>
|
||
|
<option value="AL">Alabama</option>
|
||
|
<option value="AK">Alaska</option>
|
||
|
<option value="AZ">Arizona</option>
|
||
|
<option value="AR">Arkansas</option>
|
||
|
<option value="CA">California</option>
|
||
|
<option value="CO">Colorado</option>
|
||
|
<option value="CT">Connecticut</option>
|
||
|
<option value="DE">Delaware</option>
|
||
|
<option value="DC">District of Columbia</option>
|
||
|
<option value="FL">Florida</option>
|
||
|
<option value="GA">Georgia</option>
|
||
|
<option value="HI">Hawaii</option>
|
||
|
<option value="ID">Idaho</option>
|
||
|
<option value="IL">Illinois</option>
|
||
|
<option value="IN">Indiana</option>
|
||
|
<option value="IA">Iowa</option>
|
||
|
<option value="KS">Kansas</option>
|
||
|
<option value="KY">Kentucky</option>
|
||
|
<option value="LA">Louisiana</option>
|
||
|
<option value="ME">Maine</option>
|
||
|
<option value="MD">Maryland</option>
|
||
|
<option value="MA">Massachusetts</option>
|
||
|
<option value="MI">Michigan</option>
|
||
|
<option value="MN">Minnesota</option>
|
||
|
<option value="MS">Mississippi</option>
|
||
|
<option value="MO">Missouri</option>
|
||
|
<option value="MT">Montana</option>
|
||
|
<option value="NE">Nebraska</option>
|
||
|
<option value="NV">Nevada</option>
|
||
|
<option value="NH">New Hampshire</option>
|
||
|
<option value="NJ">New Jersey</option>
|
||
|
<option value="NM">New Mexico</option>
|
||
|
<option value="NY">New York</option>
|
||
|
<option value="NC">North Carolina</option>
|
||
|
<option value="ND">North Dakota</option>
|
||
|
<option value="OH">Ohio</option>
|
||
|
<option value="OK">Oklahoma</option>
|
||
|
<option value="OR">Oregon</option>
|
||
|
<option value="PA">Pennsylvania</option>
|
||
|
<option value="RI">Rhode Island</option>
|
||
|
<option value="SC">South Carolina</option>
|
||
|
<option value="SD">South Dakota</option>
|
||
|
<option value="TN">Tennessee</option>
|
||
|
<option value="TX">Texas</option>
|
||
|
<option value="UT">Utah</option>
|
||
|
<option value="VT">Vermont</option>
|
||
|
<option value="VA">Virginia</option>
|
||
|
<option value="WA">Washington</option>
|
||
|
<option value="WV">West Virginia</option>
|
||
|
<option value="WI">Wisconsin</option>
|
||
|
<option value="WY">Wyoming</option>
|
||
|
</select>
|
||
|
<label for="select-beast" style="margin-top:20px">City:</label>
|
||
|
<select id="select-city" placeholder="Pick a city..."></select>
|
||
|
</div>
|
||
|
<script>
|
||
|
var xhr;
|
||
|
var select_state, $select_state;
|
||
|
var select_city, $select_city;
|
||
|
|
||
|
$select_state = $('#select-state').selectize({
|
||
|
onChange: function(value) {
|
||
|
if (!value.length) return;
|
||
|
select_city.disable();
|
||
|
select_city.clearOptions();
|
||
|
select_city.load(function(callback) {
|
||
|
xhr && xhr.abort();
|
||
|
xhr = $.ajax({
|
||
|
url: 'http://www.corsproxy.com/api.sba.gov/geodata/primary_city_links_for_state_of/' + value + '.json',
|
||
|
success: function(results) {
|
||
|
select_city.enable();
|
||
|
callback(results);
|
||
|
},
|
||
|
error: function() {
|
||
|
callback();
|
||
|
}
|
||
|
})
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
|
||
|
$select_city = $('#select-city').selectize({
|
||
|
valueField: 'name',
|
||
|
labelField: 'name',
|
||
|
searchField: ['name']
|
||
|
});
|
||
|
|
||
|
select_city = $select_city[0].selectize;
|
||
|
select_state = $select_state[0].selectize;
|
||
|
|
||
|
select_city.disable();
|
||
|
</script>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|