transfer.html 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>镜像站@穿梭框组件文档 - Layui</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  9. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  10. <meta name="apple-mobile-web-app-capable" content="yes">
  11. <meta name="format-detection" content="telephone=no">
  12. <script>
  13. ;!function(){self!==parent&&(location.href="http://www.baidu.com/")}();
  14. </script>
  15. <link rel="stylesheet" href="/public/layui/dist/css/layui.css" tppabs="http://res.layui.com/layui/dist/css/layui.css?t=1632428048260" media="all">
  16. <link rel="stylesheet" href="/public/static/css/global.css" tppabs="http://res.layui.com/static/css/global.css?t=1632428048260-19" media="all">
  17. </head>
  18. <body>
  19. <div class="layui-header header header-doc" autumn>
  20. <div class="layui-container">
  21. <a class="logo" href="../../index.html" tppabs="http://www.layui.com/">
  22. <img src="/public/static/images/layui/logo.png" tppabs="http://res.layui.com/static/images/layui/logo.png" alt="layui">
  23. </a>
  24. <div class="layui-form layui-hide-xs component" lay-filter="LAY-site-header-component"></div>
  25. <div class="layui-hide-xs site-notice"></div>
  26. <ul class="layui-nav" id="LAY_NAV_TOP">
  27. <li class="layui-nav-item layui-this">
  28. <a href="../index.html" tppabs="http://www.layui.com/doc/">文档</a>
  29. </li>
  30. <li class="layui-nav-item ">
  31. <a href="../../demo/index.html" tppabs="http://www.layui.com/demo/">示例</a>
  32. </li>
  33. <li class="layui-nav-item">
  34. <a href="javascript:;">
  35. <!--<span class="layui-badge-dot" style="left:0; right: auto; margin: -4px 0 0 5px;"></span>-->
  36. 周边
  37. </a>
  38. <dl class="layui-nav-child layui-nav-child-c">
  39. <dd class="layui-hide-sm layui-show-xs" lay-unselect>
  40. <a href="https://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">问题反馈</a>
  41. <hr>
  42. </dd>
  43. <dd lay-unselect><a href="../../alone.html" tppabs="http://www.layui.com/alone.html" target="_blank" lay-unselect>独立组件</a></dd>
  44. <dd lay-unselect><a href="../../../fly.layui.com/extend/index.html" target="_blank">扩展组件</a></dd>
  45. </dl>
  46. </li>
  47. <li class="layui-nav-item layui-hide-xs">
  48. <a href="http://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">反馈</a>
  49. </li>
  50. </ul>
  51. </div>
  52. </div>
  53. <!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
  54. <!--[if lt IE 9]>
  55. <script src="../../../other/html5shiv/r29/html5.min.js" tppabs="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  56. <script src="../../../other/respond.js/1.4.2/respond.min.js" tppabs="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
  57. <![endif]-->
  58. <ul class="site-dir">
  59. <li><a href="#use"><cite>快速使用</cite></a></li>
  60. <li><a href="#options"><cite>基础参数</cite></a></li>
  61. <li><a href="#parseData"><cite>数据源格式解析</cite></a></li>
  62. <li><a href="#onchange">左右穿梭的回调</a></li>
  63. <li><a href="#method"><cite>基础方法</cite></a></li>
  64. <ul style="margin-left: 15px;">
  65. <li><a href="#getData">获得右侧数据</a></li>
  66. <li><a href="#reload">实例重载</a></li>
  67. </ul>
  68. </ul>
  69. <div class="layui-container layui-row">
  70. <div class="layui-col-md3">
  71. <div class="layui-panel site-menu">
  72. <ul class="layui-menu layui-menu-lg">
  73. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  74. <div class="layui-menu-body-title">
  75. 基础说明
  76. </div>
  77. <hr>
  78. <ul>
  79. <li class="">
  80. <div class="layui-menu-body-title">
  81. <a href="../index.html" tppabs="http://www.layui.com/doc/">
  82. <span>开始使用 </span>
  83. <span class="layui-font-12 layui-font-gray">Getting Started</span>
  84. </a>
  85. </div>
  86. </li>
  87. <li class="">
  88. <div class="layui-menu-body-title">
  89. <a href="../base/infrastructure.html" tppabs="http://www.layui.com/doc/base/infrastructure.html">
  90. <span>底层方法 </span>
  91. <span class="layui-font-12 layui-font-gray">基础支撑</span>
  92. </a>
  93. </div>
  94. </li>
  95. <li class="">
  96. <div class="layui-menu-body-title">
  97. <a href="../base/element.html" tppabs="http://www.layui.com/doc/base/element.html">
  98. <span>页面元素 </span>
  99. <span class="layui-font-12 layui-font-gray">规范 公共类 属性</span>
  100. </a>
  101. </div>
  102. </li>
  103. <li class="">
  104. <div class="layui-menu-body-title">
  105. <a href="../base/modules.html" tppabs="http://www.layui.com/doc/base/modules.html">
  106. <span>模块规范 </span>
  107. <span class="layui-font-12 layui-font-gray">使用 扩展</span>
  108. </a>
  109. </div>
  110. </li>
  111. <li class="">
  112. <div class="layui-menu-body-title">
  113. <a href="../base/faq.html" tppabs="http://www.layui.com/doc/base/faq.html">
  114. <span>常见问题 </span>
  115. <span class="layui-font-12 layui-font-gray">FAQ</span>
  116. </a>
  117. </div>
  118. </li>
  119. <li class="">
  120. <div class="layui-menu-body-title">
  121. <a href="../base/changelog.html" tppabs="http://www.layui.com/doc/base/changelog.html">
  122. <span>更新日志 </span>
  123. <span class="layui-font-12 layui-font-gray">changelog</span>
  124. <span class="layui-badge-dot"></span>
  125. </a>
  126. </div>
  127. </li>
  128. </ul>
  129. </li>
  130. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  131. <div class="layui-menu-body-title">
  132. 页面元素
  133. </div>
  134. <hr>
  135. <ul>
  136. <li class="">
  137. <div class="layui-menu-body-title">
  138. <a href="../element/layout.html" tppabs="http://www.layui.com/doc/element/layout.html">
  139. <span>布局 </span>
  140. <span class="layui-font-12 layui-font-gray">栅格 后台管理布局</span>
  141. </a>
  142. </div>
  143. </li>
  144. <li class="">
  145. <div class="layui-menu-body-title">
  146. <a href="../element/color.html" tppabs="http://www.layui.com/doc/element/color.html">
  147. <span>颜色 </span>
  148. <span class="layui-font-12 layui-font-gray">主色调 颜色搭配</span>
  149. </a>
  150. </div>
  151. </li>
  152. <li class="">
  153. <div class="layui-menu-body-title">
  154. <a href="../element/icon.html" tppabs="http://www.layui.com/doc/element/icon.html">
  155. <span>图标 </span>
  156. <span class="layui-font-12 layui-font-gray">iconfont 字体图标</span>
  157. </a>
  158. </div>
  159. </li>
  160. <li class="">
  161. <div class="layui-menu-body-title">
  162. <a href="../element/anim.html" tppabs="http://www.layui.com/doc/element/anim.html">
  163. <span>动画 </span>
  164. <span class="layui-font-12 layui-font-gray">内置 CSS3 动画</span>
  165. </a>
  166. </div>
  167. </li>
  168. <li class="">
  169. <div class="layui-menu-body-title">
  170. <a href="../element/button.html" tppabs="http://www.layui.com/doc/element/button.html">
  171. <span>按钮 </span>
  172. <span class="layui-font-12 layui-font-gray">button</span>
  173. </a>
  174. </div>
  175. </li>
  176. <li class="">
  177. <div class="layui-menu-body-title">
  178. <a href="../element/form.html" tppabs="http://www.layui.com/doc/element/form.html">
  179. <span>表单 </span>
  180. <span class="layui-font-12 layui-font-gray">form 元素集合</span>
  181. </a>
  182. </div>
  183. </li>
  184. <li class="">
  185. <div class="layui-menu-body-title">
  186. <a href="../element/nav.html" tppabs="http://www.layui.com/doc/element/nav.html">
  187. <span>导航 </span>
  188. <span class="layui-font-12 layui-font-gray">nav 面包屑</span>
  189. </a>
  190. </div>
  191. </li>
  192. <li class="">
  193. <div class="layui-menu-body-title">
  194. <a href="../element/menu.html" tppabs="http://www.layui.com/doc/element/menu.html">
  195. <span>菜单 </span>
  196. <span class="layui-font-12 layui-font-gray">menu 基础菜单</span>
  197. <span class="layui-badge-dot"></span>
  198. </a>
  199. </div>
  200. </li>
  201. <li class="">
  202. <div class="layui-menu-body-title">
  203. <a href="../element/tab.html" tppabs="http://www.layui.com/doc/element/tab.html">
  204. <span>选项卡 </span>
  205. <span class="layui-font-12 layui-font-gray">Tabs 切换</span>
  206. </a>
  207. </div>
  208. </li>
  209. <li class="">
  210. <div class="layui-menu-body-title">
  211. <a href="../element/progress.html" tppabs="http://www.layui.com/doc/element/progress.html">
  212. <span>进度条 </span>
  213. <span class="layui-font-12 layui-font-gray">progress</span>
  214. </a>
  215. </div>
  216. </li>
  217. <li class="">
  218. <div class="layui-menu-body-title">
  219. <a href="../element/panel.html" tppabs="http://www.layui.com/doc/element/panel.html">
  220. <span>面板 </span>
  221. <span class="layui-font-12 layui-font-gray">panel 卡片 折叠</span>
  222. </a>
  223. </div>
  224. </li>
  225. <li class="">
  226. <div class="layui-menu-body-title">
  227. <a href="../element/table.html" tppabs="http://www.layui.com/doc/element/table.html">
  228. <span>表格 </span>
  229. <span class="layui-font-12 layui-font-gray">静态 table</span>
  230. </a>
  231. </div>
  232. </li>
  233. <li class="">
  234. <div class="layui-menu-body-title">
  235. <a href="../element/badge.html" tppabs="http://www.layui.com/doc/element/badge.html">
  236. <span>徽章 </span>
  237. <span class="layui-font-12 layui-font-gray">小圆点 小边框</span>
  238. </a>
  239. </div>
  240. </li>
  241. <li class="">
  242. <div class="layui-menu-body-title">
  243. <a href="../element/timeline.html" tppabs="http://www.layui.com/doc/element/timeline.html">
  244. <span>时间线 </span>
  245. <span class="layui-font-12 layui-font-gray">timeline</span>
  246. </a>
  247. </div>
  248. </li>
  249. <li class="">
  250. <div class="layui-menu-body-title">
  251. <a href="../element/auxiliar.html" tppabs="http://www.layui.com/doc/element/auxiliar.html">
  252. <span>辅助 </span>
  253. <span class="layui-font-12 layui-font-gray">引用 字段集 横线等</span>
  254. </a>
  255. </div>
  256. </li>
  257. </ul>
  258. </li>
  259. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  260. <div class="layui-menu-body-title">
  261. 内置模块
  262. </div>
  263. <hr>
  264. <ul>
  265. <li class="">
  266. <div class="layui-menu-body-title">
  267. <a href="layer.html" tppabs="http://www.layui.com/doc/modules/layer.html">
  268. <span>弹出层 </span>
  269. <span class="layui-font-12 layui-font-gray">layer</span>
  270. </a>
  271. </div>
  272. </li>
  273. <li class="">
  274. <div class="layui-menu-body-title">
  275. <a href="laydate.html" tppabs="http://www.layui.com/doc/modules/laydate.html">
  276. <span>日期与时间选择 </span>
  277. <span class="layui-font-12 layui-font-gray">laydate</span>
  278. </a>
  279. </div>
  280. </li>
  281. <li class="">
  282. <div class="layui-menu-body-title">
  283. <a href="laypage.html" tppabs="http://www.layui.com/doc/modules/laypage.html">
  284. <span>分页 </span>
  285. <span class="layui-font-12 layui-font-gray">laypage</span>
  286. </a>
  287. </div>
  288. </li>
  289. <li class="">
  290. <div class="layui-menu-body-title">
  291. <a href="laytpl.html" tppabs="http://www.layui.com/doc/modules/laytpl.html">
  292. <span>模板引擎 </span>
  293. <span class="layui-font-12 layui-font-gray">laytpl</span>
  294. </a>
  295. </div>
  296. </li>
  297. <li class="">
  298. <div class="layui-menu-body-title">
  299. <a href="table.html" tppabs="http://www.layui.com/doc/modules/table.html">
  300. <span>数据表格 </span>
  301. <span class="layui-font-12 layui-font-gray">table</span>
  302. </a>
  303. </div>
  304. </li>
  305. <li class="">
  306. <div class="layui-menu-body-title">
  307. <a href="form.html" tppabs="http://www.layui.com/doc/modules/form.html">
  308. <span>表单 </span>
  309. <span class="layui-font-12 layui-font-gray">form</span>
  310. </a>
  311. </div>
  312. </li>
  313. <li class="">
  314. <div class="layui-menu-body-title">
  315. <a href="upload.html" tppabs="http://www.layui.com/doc/modules/upload.html">
  316. <span>文件上传 </span>
  317. <span class="layui-font-12 layui-font-gray">upload</span>
  318. </a>
  319. </div>
  320. </li>
  321. <li class="">
  322. <div class="layui-menu-body-title">
  323. <a href="dropdown.html" tppabs="http://www.layui.com/doc/modules/dropdown.html">
  324. <span>下拉菜单 </span>
  325. <span class="layui-font-12 layui-font-gray">dropdown</span>
  326. <span class="layui-badge-dot"></span>
  327. </a>
  328. </div>
  329. </li>
  330. <li class="layui-menu-item-checked2">
  331. <div class="layui-menu-body-title">
  332. <a href="transfer.html" tppabs="http://www.layui.com/doc/modules/transfer.html">
  333. <span>穿梭框 </span>
  334. <span class="layui-font-12 layui-font-gray">transfer</span>
  335. </a>
  336. </div>
  337. </li>
  338. <li class="">
  339. <div class="layui-menu-body-title">
  340. <a href="tree.html" tppabs="http://www.layui.com/doc/modules/tree.html">
  341. <span>树形组件 </span>
  342. <span class="layui-font-12 layui-font-gray">tree</span>
  343. </a>
  344. </div>
  345. </li>
  346. <li class="">
  347. <div class="layui-menu-body-title">
  348. <a href="colorpicker.html" tppabs="http://www.layui.com/doc/modules/colorpicker.html">
  349. <span>颜色选择器 </span>
  350. <span class="layui-font-12 layui-font-gray">colorpicker</span>
  351. </a>
  352. </div>
  353. </li>
  354. <li class="">
  355. <div class="layui-menu-body-title">
  356. <a href="element.html" tppabs="http://www.layui.com/doc/modules/element.html">
  357. <span>常用元素操作 </span>
  358. <span class="layui-font-12 layui-font-gray">element</span>
  359. </a>
  360. </div>
  361. </li>
  362. <li class="">
  363. <div class="layui-menu-body-title">
  364. <a href="slider.html" tppabs="http://www.layui.com/doc/modules/slider.html">
  365. <span>滑块 </span>
  366. <span class="layui-font-12 layui-font-gray">slider</span>
  367. </a>
  368. </div>
  369. </li>
  370. <li class="">
  371. <div class="layui-menu-body-title">
  372. <a href="rate.html" tppabs="http://www.layui.com/doc/modules/rate.html">
  373. <span>评分 </span>
  374. <span class="layui-font-12 layui-font-gray">rate</span>
  375. </a>
  376. </div>
  377. </li>
  378. <li class="">
  379. <div class="layui-menu-body-title">
  380. <a href="carousel.html" tppabs="http://www.layui.com/doc/modules/carousel.html">
  381. <span>轮播 </span>
  382. <span class="layui-font-12 layui-font-gray">carousel</span>
  383. </a>
  384. </div>
  385. </li>
  386. <li class="">
  387. <div class="layui-menu-body-title">
  388. <a href="layedit.html" tppabs="http://www.layui.com/doc/modules/layedit.html">
  389. <span>富文本编辑器 </span>
  390. <span class="layui-font-12 layui-font-gray">layedit</span>
  391. </a>
  392. </div>
  393. </li>
  394. <li class="">
  395. <div class="layui-menu-body-title">
  396. <a href="flow.html" tppabs="http://www.layui.com/doc/modules/flow.html">
  397. <span>流加载 </span>
  398. <span class="layui-font-12 layui-font-gray">flow</span>
  399. </a>
  400. </div>
  401. </li>
  402. <li class="">
  403. <div class="layui-menu-body-title">
  404. <a href="util.html" tppabs="http://www.layui.com/doc/modules/util.html">
  405. <span>工具组件 </span>
  406. <span class="layui-font-12 layui-font-gray">util</span>
  407. </a>
  408. </div>
  409. </li>
  410. <li class="">
  411. <div class="layui-menu-body-title">
  412. <a href="code.html" tppabs="http://www.layui.com/doc/modules/code.html">
  413. <span>代码高亮显示 </span>
  414. <span class="layui-font-12 layui-font-gray">code</span>
  415. </a>
  416. </div>
  417. </li>
  418. </ul>
  419. </li>
  420. </ul>
  421. </div>
  422. <div class="layui-hide-v"> - </div>
  423. </div>
  424. <div class="layui-col-md9 site-content">
  425. <h1 class="site-h1"><i class="layui-icon layui-icon-transfer"></i> 穿梭框组件文档 - layui.transfer</h1>
  426. <blockquote class="layui-elem-quote layui-text">
  427. 穿梭框组件的初衷来源于 layui 社区的扩展组件平台,并且在 layui 2.5.0 的版本中开始登场。其适用的业务场景多样,不妨一试。
  428. </blockquote>
  429. <blockquote class="layui-elem-quote">
  430. 模块加载名称:<em>transfer</em>
  431. </blockquote>
  432. <fieldset class="layui-elem-field layui-field-title site-title">
  433. <legend><a name="use">快速使用</a></legend>
  434. </fieldset>
  435. <div class="site-text">
  436. <p>transfer 组件可以进行数据的交互筛选</p>
  437. <pre class="layui-code" lay-title="layui.transfer小例子">
  438. &lt;!DOCTYPE html>
  439. &lt;html>
  440. &lt;head>
  441. &lt;meta charset="utf-8">
  442. &lt;title>穿梭框组件&lt;/title>
  443. &lt;link rel="stylesheet" href="../src/css/layui.css">
  444. &lt;/head>
  445. &lt;body>
  446. &lt;div id="test1">&lt;/div>
  447. &lt;script src="../src/layui.js">&lt;/script>
  448. &lt;script>
  449. layui.use('transfer', function(){
  450. var transfer = layui.transfer;
  451. //渲染
  452. transfer.render({
  453. elem: '#test1' //绑定元素
  454. ,data: [
  455. {"value": "1", "title": "李白", "disabled": "", "checked": ""}
  456. ,{"value": "2", "title": "杜甫", "disabled": "", "checked": ""}
  457. ,{"value": "3", "title": "贤心", "disabled": "", "checked": ""}
  458. ]
  459. ,id: 'demo1' //定义索引
  460. });
  461. });
  462. &lt;/script>
  463. &lt;/body>
  464. &lt;/html>
  465. </pre>
  466. </div>
  467. <fieldset class="layui-elem-field layui-field-title site-title">
  468. <legend><a name="options">基础参数</a></legend>
  469. </fieldset>
  470. <div class="site-text">
  471. <p>目前 transfer 组件提供以下基础参数,可根据需要进行相应的设置</p>
  472. <table class="layui-table">
  473. <colgroup>
  474. <col width="120">
  475. <col>
  476. <col width="120">
  477. <col width="200">
  478. </colgroup>
  479. <thead>
  480. <tr>
  481. <th>参数选项</th>
  482. <th>说明</th>
  483. <th>类型</th>
  484. <th>默认值</th>
  485. </tr>
  486. </thead>
  487. <tbody>
  488. <tr>
  489. <td>elem</td>
  490. <td>指向容器选择器</td>
  491. <td>String/Object</td>
  492. <td>-</td>
  493. </tr>
  494. <tr>
  495. <td>title</td>
  496. <td>穿梭框上方标题</td>
  497. <td>Array</td>
  498. <td>['标题一', '标题二']</td>
  499. </tr>
  500. <tr>
  501. <td>data</td>
  502. <td>数据源</td>
  503. <td>Array</td>
  504. <td>[{}, {}, …]</td>
  505. </tr>
  506. <tr>
  507. <td>parseData</td>
  508. <td>用于对数据源进行格式解析</td>
  509. <td>Function</td>
  510. <td><a href="#parseData">详见数据源格式解析</a></td>
  511. </tr>
  512. <tr>
  513. <td>value</td>
  514. <td>初始选中的数据(右侧列表)</td>
  515. <td>Array</td>
  516. <td>-</td>
  517. </tr>
  518. <tr>
  519. <td>id</td>
  520. <td>设定实例唯一索引,用于基础方法传参使用。</td>
  521. <td>String</td>
  522. <td>-</td>
  523. </tr>
  524. <tr>
  525. <td>showSearch</td>
  526. <td>是否开启搜索</td>
  527. <td>Boolean</td>
  528. <td>false</td>
  529. </tr>
  530. <tr>
  531. <td>width</td>
  532. <td>定义左右穿梭框宽度</td>
  533. <td>Number</td>
  534. <td>200</td>
  535. </tr>
  536. <tr>
  537. <td>height</td>
  538. <td>定义左右穿梭框高度</td>
  539. <td>Number</td>
  540. <td>340</td>
  541. </tr>
  542. <tr>
  543. <td>text</td>
  544. <td>
  545. 自定义文本,如空数据时的异常提示等。
  546. <pre class="layui-code">
  547. text: {
  548. none: '无数据' //没有数据时的文案
  549. ,searchNone: '无匹配数据' //搜索无匹配数据时的文案
  550. }
  551. </pre>
  552. </td>
  553. <td>Object</td>
  554. <td>-</td>
  555. </tr>
  556. <tr>
  557. <td>onchange</td>
  558. <td>左右数据穿梭时的回调</td>
  559. <td>Function</td>
  560. <td><a href="#onchange">详见穿梭时的回调</a></td>
  561. </tr>
  562. </tbody>
  563. </table>
  564. </div>
  565. <fieldset class="layui-elem-field layui-field-title site-title">
  566. <legend><a name="parseData">数据源格式解析</a></legend>
  567. </fieldset>
  568. <div class="site-text">
  569. <p>
  570. 数据格式解析的回调函数,用于将任意数据格式解析成 transfer 组件规定的数据格式,以下是合法的数据格式如下:
  571. </p>
  572. <pre class="layui-code" lay-title="合法的数据格式" lay-skin="notepad">
  573. [
  574. {"value": "1", "title": "李白", "disabled": "", "checked": ""}
  575. ,{"value": "2", "title": "杜甫", "disabled": "", "checked": ""}
  576. ,{"value": "3", "title": "贤心", "disabled": "", "checked": ""}
  577. ]
  578. </pre>
  579. <p>然而很多时候你返回的数据格式可能并不符合规范,比如:</p>
  580. <pre class="layui-code" lay-title="不符合规范的数据格式" lay-skin="notepad">
  581. [
  582. {"id": "1", "name": "李白"}
  583. ,{"id": "2", "name": "杜甫"}
  584. ,{"id": "3", "name": "贤心"}
  585. ]
  586. </pre>
  587. <p>那么您需要将其解析成 transfer 组件所规定的数据格式:</p>
  588. <pre class="layui-code" lay-title="code">
  589. transfer.render({
  590. elem: '#text1'
  591. ,data: [
  592. {"id": "1", "name": "李白"}
  593. ,{"id": "2", "name": "杜甫"}
  594. ,{"id": "3", "name": "贤心"}
  595. ]
  596. ,parseData: function(res){
  597. return {
  598. "value": res.id //数据值
  599. ,"title": res.name //数据标题
  600. ,"disabled": res.disabled //是否禁用
  601. ,"checked": res.checked //是否选中
  602. }
  603. }
  604. });
  605. </pre>
  606. </div>
  607. <fieldset class="layui-elem-field layui-field-title site-title">
  608. <legend><a name="onchange">左右穿梭的回调</a></legend>
  609. </fieldset>
  610. <div class="site-text">
  611. <p>当数据在左右穿梭时触发,回调返回当前被穿梭的数据</p>
  612. <pre class="layui-code" lay-title="例子">
  613. transfer.render({
  614. elem: '#text'
  615. ,data: [] //数据源
  616. ,onchange: function(data, index){
  617. console.log(data); //得到当前被穿梭的数据
  618. console.log(index); //如果数据来自左边,index 为 0,否则为 1
  619. }
  620. });
  621. </pre>
  622. </div>
  623. <fieldset class="layui-elem-field layui-field-title site-title">
  624. <legend><a name="method">基础方法</a></legend>
  625. </fieldset>
  626. <div class="site-text">
  627. <p>基础用法是组件关键组成部分,目前所开放的所有方法如下:</p>
  628. <pre class="layui-code">
  629. var transfer = layui.transfer;
  630. transfer.set(options); //设定全局默认参数。options 即各项基础参数
  631. transfer.getData(id); //获得右侧数据
  632. transfer.reload(id, options); //重载实例
  633. </div>
  634. <fieldset class="layui-elem-field layui-field-title site-title">
  635. <legend><a name="getData">获得右侧数据</a></legend>
  636. </fieldset>
  637. <div class="site-text">
  638. <p>穿梭框的右侧数据通常被认为是选中数据,因此你需要得到它并提交到后台。</p>
  639. <pre class="layui-code" lay-title="例子">
  640. transfer.render({
  641. elem: '#test'
  642. ,data: []
  643. ,id: 'demo1' //定义索引
  644. });
  645. //获得右侧数据
  646. var getData = transfer.getData('demo1');
  647. </pre>
  648. </div>
  649. <fieldset class="layui-elem-field layui-field-title site-title">
  650. <legend><a name="reload">实例重载</a></legend>
  651. </fieldset>
  652. <div class="site-text">
  653. <p>重载一个已经创建的组件实例,被覆盖新的基础属性</p>
  654. <pre class="layui-code" lay-title="例子">
  655. transfer.render({
  656. elem: '#test'
  657. ,data: []
  658. ,id: 'demo1' //定义索引
  659. });
  660. //可以重载所有基础参数
  661. transfer.reload('demo1', {
  662. title: ['新列表1', '新列表2']
  663. });
  664. </pre>
  665. </div>
  666. <fieldset class="layui-elem-field layui-field-title site-title">
  667. <legend><a name="docend">结语</a></legend>
  668. </fieldset>
  669. <div class="site-text">
  670. <p>穿梭框组件极易上手,在浩瀚的业务需求中,值得一用。</p>
  671. </div>
  672. <div class="layui-elem-quote">
  673. <p>layui - 在每一个细节中,用心与你沟通</p>
  674. </div>
  675. </div>
  676. </div>
  677. <div class="layui-footer footer footer-doc">
  678. <p>
  679. Copyright &copy; 2021 <a href="../../index.html" tppabs="http://www.layui.com/">「本站仅为 layui 文档保留的镜像站点,与官方无关」</a> MIT Licensed</p>
  680. <p>
  681. <a href="../../about/disclaimer.html" tppabs="http://www.layui.com/about/disclaimer.html" target="_blank">免责声明</a>
  682. <a href="../../about/relatedlinks.html" tppabs="http://www.layui.com/about/relatedlinks.html" target="_blank">友链</a>
  683. <a href="javascript:;" site-event="weixinmp">公众号</a>
  684. </p>
  685. </div>
  686. <script>
  687. window.global = {
  688. pageType: 'doc'
  689. ,preview: function(){
  690. var preview = document.getElementById('LAY_preview');
  691. return preview ? preview.innerHTML : '';
  692. }()
  693. };
  694. </script>
  695. <div class="site-tree-mobile layui-hide">
  696. <i class="layui-icon layui-icon-spread-left"></i>
  697. </div>
  698. <div class="site-mobile-shade"></div>
  699. <script src="/public/layui/dist/layui.js" tppabs="http://res.layui.com/layui/dist/layui.js?t=1632428048260" charset="utf-8"></script>
  700. <script>
  701. layui.config({
  702. base: '/public/static/lay/modules/layui/'
  703. ,version: '1632428048260'
  704. }).use('global');
  705. </script>
  706. </body>
  707. </html>