本文概述
- Smart Select布局示例
- Smart Select搜索栏示例
- 自定义页面标题和反向链接文本示例
- 在弹出示例中打开
- 在选择器中打开示例
- 自定义图标, 颜色和图像示例
- 多重选择和选择组示例
- 多选和最大长度示例
Framework7 Smart Select可以轻松地将表单选择更改为动态页面。它使用一组复选框和单选输入。
智能选择可以多种形式使用:
指数 | 类型 | 描述 |
---|---|---|
1) | 智能选择布局 | 智能选择布局用于使用智能选择类在select元素内定义列表视图。 |
2) | 带有搜索栏的智能选择 | 智能选择用于通过使用搜索栏搜索元素, 并通过将data-searchbar类设置为true来启用它。 |
3) | 自定义页面标题和反向链接文本 | 它使你可以使用data-page-title和data-back-text属性为智能选择设置自定义页面标题和后链接。 |
4) | 在弹出窗口中打开 | 通过使用data-open-in属性弹出, 可以将智能选择作为弹出窗口打开。 |
5) | 在选择器中打开 | 通过将data-open-in属性设置为picker, 可以将智能选择显示为选择器模式。 |
6) | 自定义图标, 颜色和图像 | 你可以分别通过使用data-option-icon, data-option-color和data-option-image属性在智能选择上定义自定义图标, 颜色或图像。 |
7) | 多重选择和选择组 | 智能选择可通过使用multiple和optgroup属性来帮助你使用多个select和group选项。 |
8) | 多选和最大长度 | 智能选择可帮助你使用maxlength属性选择数量有限的项目。 |
Smart Select布局示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Smart Select Layout</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Smart Select Layout</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" class = "item-link smart-select">
<select name = "countries">
<option value = "India" selected>India</option>
<option value = "Newz = Zealnad">New Zealand</option>
<option value = "Srilanka">Srilanka</option>
<option value = "WestIndies">West Indies</option>
<option value = "China">China</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Countries</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" class = "item-link smart-select">
<select name = "fruits">
<option value = "Apple">Apple</option>
<option value = "Pineapple">Pineapple</option>
<option value = "Pear">Pear</option>
<option value = "Orange" selected>Orange</option>
<option value = "Mango">Mango</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" class = "item-link smart-select">
<select name = "books">
<option value = "EyesDragon" selected>Eyes of the Dragon</option>
<option value = "Winter">Winter Wedding</option>
<option value = "DarkWood" selected>In a Dark, Dark Wood</option>
<option value = "FarAway" selected>Far and Away</option>
<option value = "WasteLands">The Waste Lands</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Books</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
Smart Select搜索栏示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Smart Select Search Bar</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Smart Select with Search Bar</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" data-searchbar = "true"
data-searchbar-placeholder = "Search Countries" class = "item-link smart-select">
<select name = "countries">
<option value = "India" selected>India</option>
<option value = "Newz = Zealnad">New Zealand</option>
<option value = "Srilanka">Srilanka</option>
<option value = "WestIndies">West Indies</option>
<option value = "China">China</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Countries</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" data-searchbar = "true"
data-searchbar-placeholder = "Search Sports" class = "item-link smart-select">
<select name = "fruits">
<option value = "Apple">Apple</option>
<option value = "Pineapple">Pineapple</option>
<option value = "Pear">Pear</option>
<option value = "Orange" selected>Orange</option>
<option value = "Mango">Mango</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" data-searchbar = "true"
data-searchbar-placeholder = "Search Books" class = "item-link smart-select">
<select name = "books">
<option value = "EyesDragon" selected>Eyes of the Dragon</option>
<option value = "Winter">Winter Wedding</option>
<option value = "DarkWood" selected>In a Dark, Dark Wood</option>
<option value = "FarAway" selected>Far and Away</option>
<option value = "WasteLands">The Waste Lands</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Books</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
自定义页面标题和反向链接文本示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Custom Page Title and Back Link Text</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Custom Page Title and Back Link Text</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#"
data-page-title = "Countries List"
data-back-text = "Click here to go back" class = "item-link smart-select">
<select name = "countries">
<option value = "India" selected>India</option>
<option value = "Newz = Zealnad">New Zealand</option>
<option value = "Srilanka">Srilanka</option>
<option value = "WestIndies">West Indies</option>
<option value = "China">China</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Countries</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#"
data-page-title = "Sports List"
data-back-text = "Click here to go back" class = "item-link smart-select">
<select name = "fruits">
<option value = "Apple">Apple</option>
<option value = "Pineapple">Pineapple</option>
<option value = "Pear">Pear</option>
<option value = "Orange" selected>Orange</option>
<option value = "Mango">Mango</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" data-page-title = "Books List"
data-back-text = "Click here to go back" class = "item-link smart-select">
<select name = "books">
<option value = "EyesDragon" selected>Eyes of the Dragon</option>
<option value = "Winter">Winter Wedding</option>
<option value = "DarkWood" selected>In a Dark, Dark Wood</option>
<option value = "FarAway" selected>Far and Away</option>
<option value = "WasteLands">The Waste Lands</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Books</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
在弹出示例中打开
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Open in Popup</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Smart Select Open in Popup</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" data-open-in = "popup" class = "item-link smart-select">
<select name = "countries">
<option value = "India" selected>India</option>
<option value = "Newz = Zealnad">New Zealand</option>
<option value = "Srilanka">Srilanka</option>
<option value = "WestIndies">West Indies</option>
<option value = "China">China</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Countries</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" data-open-in = "popup"
data-popup-close-text = "Close the List" class = "item-link smart-select">
<select name = "fruits">
<option value = "Apple">Apple</option>
<option value = "Pineapple">Pineapple</option>
<option value = "Pear">Pear</option>
<option value = "Mango" selected>Mango</option>
<option value = "Orange">Orange</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
在选择器中打开示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Open in Picker</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Smart Select Open in Picker</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" data-open-in = "picker" class = "item-link smart-select">
<select name = "countries">
<option value = "India" selected>India</option>
<option value = "Newz = Zealnad">New Zealand</option>
<option value = "Srilanka">Srilanka</option>
<option value = "WestIndies">West Indies</option>
<option value = "China">China</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Countries</div>
</div>
</div>
</a>
</li>
<li>
<a href = "#" data-open-in = "picker"
data-picker-close-text = "Close the List" class = "item-link smart-select">
<select name = "fruits">
<option value = "Apple">Apple</option>
<option value = "Pineapple">Pineapple</option>
<option value = "Pear">Pear</option>
<option value = "Mango" selected>Mango</option>
<option value = "Orange">Orange</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
自定义图标, 颜色和图像示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Custom icons, colors and images</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Smart Select Custom Icons, Colors and Images</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" class = "item-link smart-select">
<select name="fruits">
<option value="apple" selected data-option-color="red"data-option-image="image source">Apple</option>
<option value="pineapple" data-option-color="yellow"data-option-image="image source">Pineapple</option>
\<option value = "Pear"data-option-color="yellow"data-option-image="image source">Pear</option>
<option value = "Mango"data-option-color="green"data-option-image="image source">Mango</option>
<option value = "Orange"data-option-color="orange"data-option-image="image source">Orange</option>
</select>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title">Fruits</div>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
多重选择和选择组示例
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Multiple Select and Optgroup</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Multiple Select and Optgroup</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li><a href="#" class="item-link smart-select">
<!-- "multiple" attribute for multiple select-->
<select name="car" multiple>
<!-- options grouped within "optgroup" tag-->
<optgroup label="Japanese">
<option value="honda" selected>Honda</option>
<option value="lexus">Lexus</option>
<option value="mazda">Mazda</option>
<option value="nissan">Nissan</option>
<option value="toyota">Toyota</option>
</optgroup>
<optgroup label="German">
<option value="audi" selected>Audi</option>
<option value="bmw">BMW</option>
<option value="mercedes">Mercedes</option>
<option value="vw">Volkswagen</option>
<option value="volvo">Volvo</option>
</optgroup>
<optgroup label="American">
<option value="cadillac">Cadillac</option>
<option value="chrysler">Chrysler</option>
<option value="dodge">Dodge</option>
<option value="ford" selected>Ford</option>
</optgroup>
</select>
<div class="item-content">
<div class="item-inner">
<div class="item-title">Car</div>
</div>
</div></a></li>
</ul>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7 ({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
多选和最大长度示例
通过使用maxlength属性, 它可以帮助你选择数量有限的项目。
在此示例中, maxlength为3。因此, 你最多可以选择3辆汽车。
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1, maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Multiple Select and Maxlength</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center sliding">Multiple Select and Maxlength</div>
<div class = "right"> </div>
</div>
</div>
<div class = "pages navbar-through">
<div data-page = "home" class = "page">
<div class = "page-content">
<div class = "list-block">
<ul>
<li>
<a href = "#" class = "item-link smart-select">
<select name="car" multiple maxlength="3">
<optgroup label="Japanese">
<option value="honda" selected>Honda</option>
<option value="lexus">Lexus</option>
<option value="mazda">Mazda</option>
<option value="nissan">Nissan</option>
<option value="toyota">Toyota</option>
</optgroup>
<optgroup label="German">
<option value="audi">Audi</option>
<option value="bmw">BMW</option>
<option value="mercedes">Mercedes</option>
<option value="vw">Volkswagen</option>
<option value="volvo">Volvo</option>
</optgroup>
<optgroup label="American">
<option value="cadillac">Cadillac</option>
<option value="chrysler">Chrysler</option>
<option value="dodge">Dodge</option>
<option value="ford">Ford</option>
</optgroup>
</select>
<div class="item-content">
<div class="item-inner">
<div class="item-title">Car</div>
</div>
</div></a></li>
</ul>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
// here initialize the app
var myApp = new Framework7({
animateNavBackIcon:true
});
// If your using custom DOM library, then save it to $$ variable
var $$ = Dom7;
// Add the view
var mainView = myApp.addView('.view-main', {
// enable the dynamic navbar for this view
dynamicNavbar: true
});
</script>
</body>
</html>
立即测试
评论前必须登录!
注册