MulLine.js 使用说明
(完整版)MulLine使用手册
MulLine.js 使用说明具体描述 (3)一约定和声明 (3)二基础特性: (4)1如何初始化MulLine (含属性说明) (4)2 如何在JavaScript中给MulLine赋值 (5)3 如何在JavaScript中从MulLine取值 (5)4 如何在JSP中得到MulLine中的值(必须提交页面) (5)5 如何在JSP中给MulLine赋值 (6)6 如何添加一行 (6)7 如何删除一行 (6)8 如何删除所有行 (7)9 如何删除所有空行 (7)10 如何隐藏或显示”+”和”--“标记 (7)11 如何锁定或解锁”+”和”--“标记 (7)12 如何隐藏一列(不鼓励使用该方法:显示效果不好) (7)13 如何得到行数和列数 (8)14 如何设置某一列的初始化值 (8)15 如何设置在页面上的显示宽度 (8)16 如何设置使指定行的某一列得到焦点 (9)17 如何判断指定行的某一列是否得到焦点 (9)三中级特性: (9)1 如何使用CheckBox 选项框 (9)1.1 如何初始化CheckBox 选项框 (9)1.2 如何判断该行CheckBox 选项框被选中 (9)1.3 如何选中或不选中所有行的CheckBox选项框 (10)1.4 如何删除选中CheckBox 选项框的所有行 (10)1.5 如何选中指定行的CheckBox 选项框 (10)2 如何使用Radio 单选框 (10)1.1 如何初始化Radio 单选框 (10)2.2 如何判断该行的Radio 单选框被选中 (11)四高级特性: (11)1 如何在MulLine中添加代码选择功能(即双击弹出选择下拉框) (11)2如何在MulLine中添加代码选择功能(即双击弹出选择下拉框,从前端自己传入数据) (13)3 如何在MulLine中添加字段数据校验功能 (15)4 如何在MulLine中添加双击相应事件,响应自己编写的JS函数 (15)5如何在MulLine中单击CheckBox时响应开发人员外部编写的JS函数 (16)6 如何在MulLine中单击RadioBox时响应开发人员外部编写的JS函数 (18)7 如何在MulLine中单击“+”按钮和“–”号按钮时响应开发人员外部编写的JS函数 .. 198 如何在分页显示数据时,使后续页的MulLine中的显示序号与纪录数一致 (20)9 如何在使用代码选择功能时,设置弹出的选择下拉框的宽度 (21)10 如何在使用代码选择功能时,强制刷新数据源 (21)11 如何在查询时使设置的代码选择列将编码显示为对应的汉字 (21)五错误描述和诊断 (21)1 如果IE弹出对话框:没有该对象或未知的对象或者对象没有该方法 (21)2 如果弹出对话框:MulLine.js中某某方法出现异常 (21)3如果弹出对话框:MulLinejs中某某方法中指定了错误的列(或者行) (22)4如果出现其它错误信息 (22)具体描述一约定和声明(1) 你使用得IE版本必须是5.5以上(包括5.5)(2)在后续的所有说明中,均假定MulLine的对象名为:ObjGrid ;该MulLine对象所在的表单名为:fm(3)后续用到的行和列都是从0行0列开始。
mutation.js的使用方法
第一部分:简介1.1 mutation.js是什么?mutation.js是一个用于JavaScript的库,它可以帮助开发者更容易地管理数据变更和状态管理。
它提供了一种简洁而强大的方式来处理数据的变化,使得在大型应用程序中更容易跟踪和管理数据的变动。
1.2 为什么需要mutation.js?在大型的前端应用程序中,数据的变化通常会引发多个组件的更新。
mutation.js通过提供一种集中的方式来管理数据变动,可以帮助开发者更加轻松地管理数据的流动和变化。
它可以使得代码更加清晰和可维护,同时也提高了应用程序的性能。
第二部分:使用方法2.1 安装mutation.js要开始使用mutation.js,首先需要安装它。
可以通过npm或者yarn 来进行安装:```bashnpm install mutation.js```或者```bashyarn add mutation.js```2.2 创建一个mutation实例一旦安装完成,就可以在代码中引入mutation.js,并创建一个mutation的实例:```javascriptimport { Mutation } from 'mutation.js';const mutator = new Mutation();```2.3 定义mutation在创建了mutation的实例之后,就可以开始定义mutation了。
mutation可以被理解为用于对数据进行修改的一种操作,它可以包括添加、修改和删除等操作。
```javascriptmutator.add('updateName', (state, payload) => { = payload;});```在上面的例子中,定义了一个名为updateName的mutation,它接受一个payload作为参数,并将state中的name属性更新为payload的值。
mediaelement.js 使用方法
【mediaelement.js 使用方法详解】让我们来深入了解一下 mediaelement.js 这个强大的工具,它是一个用于在网页中嵌入音频和视频的开源 JavaScript 库。
它不仅支持HTML5 音频和视频,还能在不同浏览器中提供一致的用户体验。
接下来,我们将从简单的部分开始,逐步深入,详细介绍mediaelement.js 的使用方法。
1. 导入 mediaelement.js 库文件你需要在你的网页中导入 mediaelement.js 的库文件,你可以选择通过 CDN 或下载本地文件来实现,这一步非常简单,只需要在网页中插入一行代码即可。
2. 创建音频或视频标签一旦导入了库文件,接下来你需要在你的 HTML 中创建音频或视频标签,并为它们设置一些基本的属性,例如文件路径、播放器样式等等。
这一步也很简单,只需要几行代码就能搞定。
3. 初始化 mediaelement.js在你的 JavaScript 代码中,你需要初始化 mediaelement.js 并关联它与你创建的音频或视频标签。
这一步稍微复杂一些,涉及到一些函数调用和参数设置,但只要按照官方文档的指引来,就不会有太大的困难。
4. 自定义播放器样式和功能mediaelement.js 提供了丰富的 API 和插件,让你可以轻松地自定义播放器的样式和功能。
你可以添加自定义的控制按钮、进度条、音量调节器等等,以满足你的特定需求。
5. 响应式设计和浏览器兼容性在你完成了以上步骤之后,你还需要考虑一些高级的功能,例如响应式设计和浏览器兼容性。
mediaelement.js 提供了一些事件和方法,让你可以针对不同设备和浏览器做一些特殊处理。
通过以上五个步骤,你就可以轻松地使用 mediaelement.js 在你的网页中嵌入音频和视频,并且实现丰富的自定义功能,提供一致的用户体验。
这个工具非常强大、灵活,而且使用起来也相对简单,非常适合各种网页开发的需求。
mule 传参数
mule 传参数Mule传参数是Mule ESB(企业服务总线)中常见的操作之一。
通过传递参数,可以实现不同组件之间的数据交互和信息传递。
本文将介绍Mule传参数的基本概念、使用方法以及一些注意事项。
我们来了解一下Mule传参数的基本概念。
在Mule中,参数可以是任何类型的数据,如字符串、数字、对象等。
传递参数的目的是为了在不同的组件之间传递数据,以便实现各种功能和业务逻辑。
参数可以在Mule流程中的不同组件之间传递,包括源端点、转换器、路由器等。
在Mule中,传递参数可以通过多种方式实现。
其中一种常见的方式是使用Mule表达式语言(MEL)来引用和传递参数。
MEL是一种简单而强大的语言,可以在Mule配置文件中使用,用于处理和操作消息和参数。
通过使用MEL,可以轻松地获取和设置参数的值,以及对参数进行各种操作,如转换、过滤、计算等。
在Mule中,传递参数的方式也可以根据具体需求而定。
例如,可以使用Mule属性来传递参数,属性是一种在Mule消息中存储和传递数据的机制。
属性可以在Mule流程中的不同组件之间传递,以及在同一组件内的不同操作之间传递。
通过使用属性,可以方便地在Mule流程中传递参数值,并在需要时进行引用和操作。
除了使用MEL和属性,还可以使用Mule的变量来传递参数。
变量是一种在Mule流程中存储和传递数据的机制,类似于属性。
不同之处在于,变量的作用范围可以更加灵活,可以在整个Mule流程中共享和传递。
通过使用变量,可以方便地在Mule流程中传递参数,并在不同组件和操作之间共享和引用。
在使用Mule传递参数时,需要注意一些事项。
首先,要确保参数的类型和值是正确的,以避免错误和异常。
其次,要注意参数的命名和引用,以确保在Mule流程中能够正确地引用和使用参数。
此外,要注意参数的作用域和生命周期,以确保在需要时能够正确地传递和使用参数。
总结一下,Mule传参数是实现数据交互和信息传递的重要方式之一。
MulLinejs使用说明
MulLine.js 使用说明具体描述 ........................................................................................................... 错误!未定义书签。
一约定和声明 ................................................................................................. 错误!未定义书签。
二基础特性: ................................................................................................. 错误!未定义书签。
1如何初始化MulLine (含属性说明)............................................... 错误!未定义书签。
2 如何在JavaScript中给MulLine赋值 ............................................ 错误!未定义书签。
3 如何在JavaScript中从MulLine取值 .......................................... 错误!未定义书签。
4 如何在JSP中得到MulLine中的值(必须提交页面)............... 错误!未定义书签。
5 如何在JSP中给MulLine赋值....................................................... 错误!未定义书签。
6 如何添加一行................................................................................... 错误!未定义书签。
node.js使用方法
Node.js使用方法1.简介N o de.j s是一个基于C hr om eV8引擎的开源、轻量级的J ava S cr ip t运行环境。
它能够在服务器端运行Ja va Sc r ip t代码,使得开发者可以使用同一种语言编写前端和后端应用。
本文将介绍No de.j s的安装、基本使用和常用模块。
2.安装首先,确保你的计算机上已经安装了N ode.js的最新版本。
你可以在N o de.js的官方网站上下载并安装适合你操作系统的版本。
安装完成后,你可以在命令行中输入`no de-v`来验证安装是否成功。
3.第一个N ode.js应用接下来让我们编写一个简单的No de.j s应用来验证安装是否成功。
打开你喜欢的文本编辑器,创建一个名为`a p p.js`的文件,在其中输入以下代码:c o ns ol e.lo g("H ell o,N od e.js!");保存文件后,在命令行中切换到该文件所在的目录,输入`n od ea pp.j s`,你应该能够看到输出的`H el lo,N od e.js!`。
4.模块管理N o de.j s拥有丰富的模块库,方便开发者使用各种功能。
使用N o de.j s的内置模块管理器np m,我们可以很方便地安装、管理和分享模块。
4.1安装模块要安装一个模块,只需在命令行中输入`n p mi ns ta ll模块名`即可。
例如,要安装一个叫做`ex pr es s`的W eb框架,可以执行以下命令:n p mi ns ta ll ex pr ess4.2使用模块在你的应用中使用一个已安装的模块,只需在Ja va Sc ri pt文件的开头添加`r eq ui re('模块名')`。
例如,要在应用中使用`e xp r es s`模块,可以这样写:c o ns te xp re ss=r equ i re('ex pr es s');5.常用模块N o de.j s拥有众多常用的模块,下面列举几个常用的模块及其用途:5.1h t t p模块`h tt p`模块提供了创建HT TP服务器和客户端的功能。
vue-multiselect用法
Vue-Multiselect 是一个用于Vue.js 的多功能选择框组件,它可以方便地实现多选、搜索、标签式选择等功能。
以下是一个基本的Vue-Multiselect 使用示例:
1. 首先,你需要安装Vue-Multiselect。
如果你使用npm,可以在你的项目中运行以下命令:
2. 在你的Vue 组件中,你需要导入并注册Vue-Multiselect 组件:
javascript代码:
3. 在模板中使用Vue-Multiselect:
html代码:
在这个例子中,用于双向绑定选中的选项,
则是提供给用户选择的选项列表。
Vue-Multiselect 还有许多其他配置和功能,包括但不限于:
label 和track-by:自定义显示在选择框中的选项标签。
multiple:是否允许多选。
searchable:是否启用搜索功能。
clear-on-select:是否在选择一个选项后清空搜索框。
taggable:是否允许用户创建新的选项(标签式输入)。
placeholder:未选择任何选项时显示的占位符文本。
allow-empty:是否允许不选择任何选项。
events:自定义事件监听。
你可以在Vue-Multiselect 的官方文档中找到更详细的用法和配置选项。
根据你的需求,你可以调整这些属性和方法来定制你的多选框组件。
MulLinejs使用说明
MulLine.js 使用说明具体描述 ........................................................................................................... 错误!未定义书签。
一约定和声明 ................................................................................................. 错误!未定义书签。
二基础特性: ................................................................................................. 错误!未定义书签。
1如何初始化MulLine (含属性说明)............................................... 错误!未定义书签。
2 如何在JavaScript中给MulLine赋值 ............................................ 错误!未定义书签。
3 如何在JavaScript中从MulLine取值 .......................................... 错误!未定义书签。
4 如何在JSP中得到MulLine中的值(必须提交页面)............... 错误!未定义书签。
5 如何在JSP中给MulLine赋值....................................................... 错误!未定义书签。
6 如何添加一行................................................................................... 错误!未定义书签。
js中滚动条的方法
js中滚动条的方法
在JavaScript中,可以使用以下方法来操作滚动条:
1. `()`:将窗口滚动到指定的位置。
它接受两个参数,分别是水平位置和垂直位置。
```javascript
(x-coord, y-coord);
```
2. `()`:相对于当前滚动位置向下或向右滚动窗口。
它也接受两个参数,分别是水平滚动距离和垂直滚动距离。
```javascript
(x-coord, y-coord);
```
3. `()`:与`()`类似,但它接受一个对象作为参数,该对象包含`left`和`top`属性,分别表示水平位置和垂直位置。
```javascript
({left: x-coord, top: y-coord});
```
4. ``和``:这两个属性分别表示窗口的垂直滚动距离和水平滚动距离。
可以设置它们的值来滚动窗口。
```javascript
= y-coord;
= x-coord;
```
5. `()`:将指定的元素滚动到视口中。
它接受一个可选参数,该参数可以是一个对象,包含`behavior`、`block`和`inline`属性,用于控制滚动行为。
```javascript
({behavior: "smooth", block: "center", inline: "nearest"});
```
这些方法可以帮助您在JavaScript中操作滚动条,根据需要滚动窗口或元素。
mediaelement.js用法
一、mediaelement.js的介绍mediaelement.js是一个流行的开源HTML5媒体播放器,它提供了一个简单而强大的解决方案,能够让开发者很容易地添加音频和视瓶播放功能到其全球信息站或应用程序中。
它支持多种媒体格式,包括MP4,WebM,MP3等,而且还支持流媒体播放。
二、mediaelement.js的功能1. 支持多种媒体格式:mediaelement.js支持MP4、WebM、MP3等多种媒体格式,这使得开发者可以在不同的浏览器和设备上都能够顺利播放他们的音频和视瓶文件。
2. 自定义皮肤和控制栏:开发者可以根据自己的需求定制播放器的外观和控制栏,从而使其与全球信息站或应用程序的整体设计风格更加一致。
3. 支持响应式设计:媒体元素.js的播放器可以根据设备的屏幕大小自动调整大小,以确保在不同尺寸的屏幕上都能够有良好的显示效果。
4. 浏览器兼容性好:mediaelement.js可以在各种现代浏览器上运行良好,包括Chrome、Firefox、Safari、Edge等主流浏览器。
5. 提供丰富的API:mediaelement.js提供了丰富的JavaScript API,开发者可以通过调用这些API实现更加灵活和复杂的媒体播放控制。
三、mediaelement.js的使用步骤1. 引入mediaelement.js库文件:在网页中引入mediaelement.js库文件,可以通过CDN来引入,也可以下载到本地引入。
2. 编写HTML代码:创建一个HTML元素用于容纳媒体播放器,并设置好相应的属性,如媒体文件的路径、封面图片等。
3. 初始化媒体播放器:在JavaScript代码中初始化媒体播放器,设置好相应的配置项,如自定义皮肤、控制栏按钮等。
4. 绑定事件处理程序:根据需要绑定各种事件处理程序,如播放、暂停、音量调节等。
5. 控制媒体播放:通过JavaScript代码控制媒体播放器的播放、暂停、音量调节等操作。
simplemodule 用法
simplemodule 用法Simplemodule 是一个用于编写简单模块的工具,它可以帮助开发人员轻松地创建、组织和维护模块化的代码。
使用 Simplemodule,你可以快速构建可重用的模块,并在多个项目中共享和使用它们。
首先,你需要安装 Simplemodule 工具。
你可以使用以下命令在你的开发环境中安装 Simplemodule:```npm install -g simplemodule```安装完成后,你可以通过运行以下命令创建一个新的 Simplemodule:```simplemodule create mymodule```这将在当前目录下创建一个名为 mymodule 的文件夹,并生成一个基本的模块结构。
在 mymodule 文件夹中,你会看到一个名为 index.js 的文件,这是模块的入口文件。
你可以在这个文件中编写你的模块代码。
简单模块包含了一些常用的示例代码,帮助你快速上手。
你可以根据你的需求自由修改这些示例代码。
在 index.js 文件中,你可以导出你的模块的函数、对象或类。
例如,你可以在文件的末尾添加以下代码来导出一个简单的添加函数:```javascriptfunction add(a, b) {return a + b;}module.exports = add;```在其他项目中使用你的 Simplemodule 也非常简单。
你只需在项目中安装你的模块,然后通过 require 语句引入它。
例如,在另一个项目中,你可以运行以下命令安装并使用你的 mymodule:```npm install mymodule```然后,在你的代码中,你可以使用以下语句引入你的模块:```javascriptconst add = require('mymodule');console.log(add(2, 3)); // 输出 5```这样,你就可以在其他项目中使用你的 Simplemodule 了。
requirejs使用方法
requirejs使用方法R e q u i r e J S是一种J a v a S c r i p t模块加载器,通过异步加载模块,可以更好地管理与组织代码。
它可以帮助我们解决J a v a S c r i p t中的依赖关系问题,并且提供了一种简洁的方法来模块化我们的代码,使其更易于维护和扩展。
在本文中,我将逐步介绍Re q u i r e J S的使用方法。
一、引入R e q u i r e J S首先,我们需要从R e q u i r e J S官方网站(h t m l<s c r i p ts r c="p a t h/t o/r e q u i r e.j s"></s c r i p t>在这里,"p a t h/t o/"是R e q u i r e J S文件的相对路径或绝对路径,根据你实际的文件组织结构进行修改。
二、定义模块在使用R e q u i r e J S之前,我们需要将我们的代码分成独立的模块。
每个模块可以包含一块功能性代码,例如函数、类或对象等。
让我们通过一个例子来说明如何定义一个模块。
j a v a s c r i p tm y M o d u l e.j s文件d e f i n e(f u n c t i o n(){模块代码r e t u r n{模块的公共接口};});在上述代码中,我们使用de f i n e函数来定义一个模块。
d e f i n e函数接受一个匿名函数作为参数,这个匿名函数包含了模块的代码。
在此例中,我们返回了一个包含了模块公共接口的对象。
三、加载模块在定义好模块之后,我们需要使用R e q u i r e J S 来加载这些模块。
我们可以使用r e q u i r e函数来加载一个模块,并在加载完成后使用该模块。
接下来,我将使用一个示例来展示如何加载模块。
j a v a s c r i p tm a i n.j s文件r e q u i r e(['m y M o d u l e'],f u n c t i o n(m y M o d u l e) {加载完m yM o d u l e后的代码});在上述代码中,我们使用r eq u i r e函数来加载名为"m y M o d u l e"的模块,并在加载完成后使用该模块。
nodejsMulter中间件
nodejsMulter中间件Multer是⼀个Node.js中间件,⽤于处理 multipart/form-data 类型的表单数据,主要⽤于⽂件上传,注意:Multer中间件不会处理任何⾮multipart/form-data 类型的表单数据。
Multer会⾃动添加⼀个body对象及file或files对象到 express框架的request 对象,fifile或fifiles对象包含表单上传的⽂件信息。
通过表单上传⽂件时需要注意的是:(1)单的提交⽅式只能是POST(2)须设置表单的 enctype="multipart/form" 属性1 安装:npm install --save multer2.⽤法:var multer = require(‘multer‘);var upload = multer({...});3.multer配置://1.进⾏Multer的⾃定义配置var storage = multer.diskStorage({//设置⽂件上传的位置,cb(callback简写)destination: function (req, file, cb) {//上传到path变量所指定的位置cb(null, path);},//设置上传⽂件名称的操作filename: function (req, file, cb) {//对于⽂件名进⾏相关的操作//获取原始⽂件的扩展名var extension = file.originalname.substr(stIndexOf(‘.‘)+1).toLowerCase();//⽣成新的⽂件名var filename = uuid.v1() + ‘.‘ + extension;cb(null, filename);}});//2.使⽤⾃定义配置var upload = multer({ storage: storage });4.请求参数(1)single(fifieldname)接收以fifieldname命名的⽂件上传,该⽂件的信息存储在 req.file 内,如:app.post(‘/single‘,upload.single(‘avater‘), (req, res) => { res.send({ message: ‘OK‘ });});// single它是Multer对象的请求参数名称,avater指表单中input type="file"的name的属性值(2)array(fieldname,[maxCount])接收以fieldname命名的上传⽂件数组,可通过maxCount参数限制上传⽂件的最⼤数量,这些⽂件的信息存储在 req.files 内,如:app.post(‘/multiple‘,upload.array(‘album‘), (req, res) => { res.send({ message: ‘OK‘ });});5.req.fifile及req.fifilesreq.fifile返回单⽂件上传时的⽂件相关信息对象req.fifiles返回多⽂件上传时的⽂件相关信息数组信息有:originalname,上传⽂件的原始名称fifilename,⽂件上传后的名称size,上传⽂件的字节数(以字节为单位)mimetype,上传⽂件的MIME类型6.UUIDUUID(Universally Unique Identififier),通⽤唯⼀识别码,其⽬的是为了让分布式系统中的所有元素都能存在唯⼀标识信息 -- ⽂件名称格式 8-4-4-4-12的形态安装:npm install --save uuid使⽤UUID://⽣成基于时间戳的UUID uuid.v1();//⽣成⽣成随机数的UUID uuid.v4();。
nodejsmulter实现文件上传与下载
nodejsmulter实现⽂件上传与下载本⽂实例为⼤家分享了nodejs实现⽂件上传下载的具体代码,供⼤家参考,具体内容如下1.介绍做了⼀个关于⽂件上传和下载的demo ,选择了Multer 作为中间件进⾏数据处理。
2. upload ⽂件上传html form标签内设置enctype=”multipart/form-data”是必须的,这样才可以上传⽂件,⽅式为post ,在服务端使⽤multer时,基本与官⽹相同,引⽤中间件multer,app.post(‘\upload',upload.single(‘name'),function(){}); 指定单⽂件上传,参数是html的input⾥⾯的name ,这样就可以上传成功,但是问题是multer不会管你的后缀,上传到upload⽂件夹的⽂件有⼀个乱序名称但是没有后缀,所以我增加了这个功能。
req.file是⽂件信息,取得原名称,经过数组以及堆栈等处理得到后缀'.jpg' ,⽤fs.renameSync()⽅法重命名⽂件,加上本来的后缀。
这样真正的上传成功。
唯⼀的缺点是没有实现改变⽂件名字,使⽤官⽹⽅式出现了错误,所以没有深究。
3.download ⽂件下载⽹上基本上是express对res.download的封装以及fs⽅法为主,注意要把⽂件夹设定为静态⽂件。
出现的问题是点击之后就会在新页⾯显⽰要下载的⽂件,⽆论是图⽚还是⾳乐。
这让我很困扰,但是找了很久也没有很好的解决。
⽤IE访问结果是会出现下载还是查看的选项。
很迷。
总之就是这样了,⼀晚上的努⼒,我很满⾜。
嘻嘻服务端//index.jsvar fs = require('fs')var express = require('express')var multer = require('multer')const path = require('path');var app = express();var upload = multer({dest:'upload/'});//多⽂件上传(限定上传⽂件个数)(没有修改后缀)app.post('/upload-multi',upload.array('myfile',2),function(req,res,next){res.send("2 done");})//单⽂件上传获取信息app.post('/upload-single',upload.single('myfile'),function(req,res,next){var file=req.file;// console.log("名称:%s",file.originalname);// console.log("mime:%s",file.mimetype);//以下代码得到⽂件后缀name=file.originalname;nameArray=name.split('');var nameMime=[];l=nameArray.pop();nameMime.unshift(l);while(nameArray.length!=0&&l!='.'){l=nameArray.pop();nameMime.unshift(l);}//Mime是⽂件的后缀Mime=nameMime.join('');console.log(Mime);res.send("done");//重命名⽂件加上⽂件后缀fs.renameSync('./upload/'+file.filename,'./upload/'+file.filename+Mime);})//⽂件下载尝试(chrome会直接在页⾯上展⽰。
js implements用法
JS 实现——使你的网页更加动态一、什么是 JS 实现?JS 实现是指 JavaScript 实现,它是一种基于网页浏览器的脚本语言,用于创建动态的网页内容。
通过 JS 实现,可以让网页更加生动、交互性更强,让用户在浏览网页时能够更好地体验到信息的呈现和交互。
二、JS 实现的用途1. 实现交互式功能:通过 JS 实现,可以为网页添加各种交互式功能,比如表单验证、动画效果、内容切换等,让用户可以更加方便地与网页进行互动。
2. 提高用户体验:JS 实现可以让网页变得更加动态、灵活,用户可以通过鼠标、键盘等交互方式与网页进行交互,从而提高了用户的体验。
3. 动态数据呈现:通过 JS 实现,网页可以动态地加载数据,并实时呈现在页面上,比如实时股票行情、天气预报等,让用户可以及时地获取最新的信息。
4. 响应式设计:JS 实现也可以用于响应式设计,根据不同的设备或屏幕尺寸来动态调整页面的布局和样式,以适应不同的显示设备。
三、如何使用 JS 实现1. 内嵌方式:可以将 JS 代码直接嵌入到 HTML 页面中,在需要的地方使用 <script> 标签引入 JS 代码。
2. 外部引入:也可以将 JS 代码保存为外部文件,然后在 HTML 页面中使用 <script> 标签引入外部的 JS 文件,这样可以提高页面的可维护性和可读性。
3. 事件绑定:通过 JS 实现,可以为网页元素绑定各种事件,比如点击事件、鼠标移动事件等,以及对应的事件处理函数,实现各种交互功能。
4. DOM 操作:JS 可以通过操作 DOM(文档对象模型)来实现对页面元素的动态增删改查,比如添加新的元素、修改元素的样式等。
四、个人观点与理解JS 实现是前端开发中非常重要的一部分,通过它可以让网页更加生动、有趣,让用户可以更好地与网页进行交互。
在使用 JS 实现的过程中,需要注意代码的可维护性和兼容性,以确保不同浏览器和不同设备上都能正常运行。
mully包用户指南说明书
Package‘mully’February22,2023Type PackageTitle Create,Modify and Visualize Multi-Layered NetworksVersion2.1.38Maintainer Zaynab Hammoud<*****************************>Description Allows the user to create graphs with multiple layers.The user can also modify the lay-ers,the nodes,and the edges.The graph can also be visualized.Zaynab Hammoud and Frank Kramer(2018)<doi:10.3390/genes9110519>.More about multilayered graphs and their usage can be found in our review paper:Zaynab Hammoud and Frank Kramer(2020)<doi:10.1186/s41044-020-00046-0>.URL https:///frankkramer-lab/mullyBugReports https:///frankkramer-lab/mully/issuesLicense GPL(>=2)Encoding UTF-8RoxygenNote7.2.3Imports igraph(>=1.3.5.9097),rgl(>=1.0.0),randomcoloR,graphics,statsSuggests knitr,rmarkdownVignetteBuilder knitrNeedsCompilation noAuthor Zaynab Hammoud[aut,cre]Repository CRANDate/Publication2023-02-2217:00:03UTCR topics documented:mully-package (2)addEdge (3)addLayer (4)addNode (4)demo (5)12mully-packageexportCSV (5)getEdgeAttributes (6)getIDEdge (7)getIDNode (7)getLayer (8)getLayersCount (8)getNode (9)getNodeAttributes (9)importEdgesCSV (10)importGraphCSV (10)importLayersCSV (11)importNodesCSV (11)is.mully (12)isLayer (12)merge (13)mully (13)plot.mully (14)plot3d (14)print.mully (15)removeEdge (16)removeLayer (17)removeNode (17)Index19mully-package The mully packageDescriptionR package to create,modify and visualize graphs with multiple layers.IntroductionNetwork theory has been used for many years in the modeling and analysis of complex systems,asepidemiology,biology and biomedicine.As the data evolves and becomes more heterogeneous andcomplex,monoplex networks become an oversimplification of the corresponding systems.This im-poses a need to go beyond traditional networks into a richer framework capable of hosting objectsand relations of different scales,called Multilayered Network**Mully**,**mul**ti**l**a**y**ernetworks,is an R package that provides a multilayer network ing this package,the user can create,modify and visualize graphs with multiple layers.This package is an exten-sion to the[igraph package](https:///igraph/rigraph)that provides a monolayer graphframework.The package is implemented as a part of[the Multipath Project](https://www.sys-med.de/en/junior-research-groups/multipath/)directed by[Dr.Frank Kramer](https://www.uni-augsburg.de/de/fakultaet/fai/i .addEdge3 Creating graphsmully,addLayer,addNode,addEdge,removeLayer,removeNode,removeEdge,getNodeAttributes, getEdgeAttributesVisualizationplot.mully,plot3dFurther informationMore information and references can be found in the mully paper:https:///2073-4425/9/11/519addEdge Add an edgeDescriptionAdd an edgeUsageaddEdge(g,nodeStart,nodeDest,attributes)Argumentsg The input graphnodeStart Thefirst endpoint of the edgenodeDest The second endpoint of the edgeattributes The attributes to assign to the edgeValueThe mully graph,with the added edgeExamplesg=mully::demo()addEdge(g,"dr3","g2",attributes=list(name="newEdge"))4addNode addLayer Add a layer or a set of layers to a graphDescriptionAdd a layer or a set of layers to a graphUsageaddLayer(g,nameLayer)Argumentsg The input graph.nameLayer The name or the list of the names of the layers to be added.The layer names must be unique.ValueThe graph,with the layers added.Examplesg=mully("MyFirstMully",direct=FALSE)g=addLayer(g,c("Gene","Drug","Disease"))addNode Add a node with assigned layer and attributes to a graphDescriptionAdd a node with assigned layer and attributes to a graphUsageaddNode(g,nodeName,layerName,attributes=NA)Argumentsg The input graph.nodeName The name of the node to add.layerName The name of the layer to be assigned to the node.attributes The attributes of the node to add.This argument must be a named list.demo5ValueThe mully graph,with the new node.Examplesg=mully::demo()attributes=list("specie"="Homo Sapiens")addNode(g=g,nodeName="g3",layerName="Gene",attributes=attributes)demo A demo function to test the packageDescriptionA demo function to test the packageUsagedemo(name="MyFirstMully")Argumentsname Optional name for the graph to be created.By default set to"MyFirstMully" ValueA mully test graph with few layers,nodes and edgesexportCSV Export mully into CSVfilesDescriptionExport mully into CSVfilesUsageexportCSV(g,target)Argumentsg The input graphtarget The targetfile in which thefiles will be generated.6getEdgeAttributes ValueNo return value.Exports the given graph into different CSVfiles saved in the target folderExamples##Not run:g=mully::demo()exportCSV(g,directory)##End(Not run)getEdgeAttributes Get the attributes of the edges connecting two nodesDescriptionGet the attributes of the edges connecting two nodesUsagegetEdgeAttributes(g,nodeStart,nodeDest)Argumentsg The input graphnodeStart Thefirst endpoint of the edgenodeDest The second endpoint of the edgeValueA dataframe containing the edges with their attributes.If both nodes’arguments are missing,itreturns all the edges with their attributes.Examplesg=mully::demo()#Print all EdgesgetEdgeAttributes(g)#Get a Single EdgegetEdgeAttributes(g,"d2","g1")getIDEdge7 getIDEdge Get the ids of the edges connecting two nodesDescriptionGet the ids of the edges connecting two nodesUsagegetIDEdge(g,nodeStart,nodeDest)Argumentsg The input graphnodeStart Thefirst endpoint of the edgenodeDest The second endpoint of the edgeValueA list containing the ids of the edges connecting the nodesExamplesg=mully::demo()getIDEdge(g,"d2","dr1")getIDNode Get the id of a nodeDescriptionGet the id of a nodeUsagegetIDNode(g,nameNode)Argumentsg The input graphnameNode The name of the nodeValueThe id of the specified node as an integer8getLayersCountExamplesg=mully::demo()getIDNode(g,"g1")getLayer Get the nodes on a layer in a graphDescriptionGet the nodes on a layer in a graphUsagegetLayer(g,nameLayer)Argumentsg The input graph.nameLayer The name of the layer.ValueA List of the nodes on the given layer.Examplesg=mully::demo()getLayer(g,"gene")getLayersCount Get the number of layers in a graphDescriptionGet the number of layers in a graphUsagegetLayersCount(g)Argumentsg The input graph.ValueThe count of the layers.getNode9Examplesg=mully("MyFirstMully",direct=FALSE)g=addLayer(g,c("Gene","Drug","Disease"))getLayersCount(g)getNode Get a node from a graphDescriptionGet a node from a graphUsagegetNode(g,nameNode)Argumentsg The input graph.nameNode The name of the node.ValueThe node as igraph.vsExamplesg=mully::demo()getNode(g,"g1")getNodeAttributes Get the attributes of a nodeDescriptionGet the attributes of a nodeUsagegetNodeAttributes(g,nameNode,layerByName=FALSE)Argumentsg The input graphnameNode The name of the nodelayerByName A boolean to specify whether to export the layers by name or by ID10importGraphCSVValueA dataframe containing the attributes of the specified nodeExamplesg=mully::demo()getNodeAttributes(g,layerByName=TRUE)importEdgesCSV Import Edges to a mully graph from a CSVfileDescriptionImport Edges to a mully graph from a CSVfileUsageimportEdgesCSV(g,file)Argumentsg The mully graph to which the nodes will be added.The graph should alreadyhave the layers and the nodes.file The path to the CSVfile containing the edges’informationValueThe mully graph with the added edgesimportGraphCSV Import a mully graph from CSVfilesDescriptionImport a mully graph from CSVfilesUsageimportGraphCSV(name=NA,direct=FALSE,layers,nodes,edges)Argumentsname The name of the graphdirect A boolean to indicate if the graph is directed or notlayers The path to the CSVfile containing the layers’informationnodes The path to the CSVfile containing the nodes’informationedges The path to the CSVfile containing the edges’informationimportLayersCSV11ValueA new mully graphimportLayersCSV Import Layers to a mully graph from a CSVfileDescriptionImport Layers to a mully graph from a CSVfileUsageimportLayersCSV(g,file)Argumentsg The mully graph to which the layers will be added.If missing,a new mullygraph is createdfile The path to the CSVfile containing the layers’informationValueThe mully graph with the added layersimportNodesCSV Import Nodes to a mully graph from a CSVfileDescriptionImport Nodes to a mully graph from a CSVfileUsageimportNodesCSV(g,file,name="name")Argumentsg The mully graph to which the nodes will be added.The graph should alreadyhave the layers.file The path to the CSVfile containing the nodes’informationname The name of the column containing the names of the nodesValueThe mully graph with the added nodes12isLayer is.mully Is this a mully graph?DescriptionIs this a mully graph?Usageis.mully(g)Argumentsg The input graphValueA boolean whether the graph is or not a mully objectisLayer Verify if the layer exists in a graphDescriptionVerify if the layer exists in a graphUsageisLayer(g,name)Argumentsg The input graph.name The name of the layer.ValueA boolean value.Examplesg=mully("MyFirstMully",direct=FALSE)g=addLayer(g,c("Gene","Drug","Disease"))isLayer(g,"Drug")merge13 merge Merge or unite two graphsDescriptionMerge or unite two graphsUsagemerge(g1,g2)Argumentsg1Thefirst graph to merge.This is the base of the merge.g2The second graph to merge.All of its elements are added to thefirst graph. ValueThe merge of the two graphs as a mully object.The merge is based on thefirst given graph mully Create an empty multilayered graphDescriptionCreate an empty multilayered graphUsagemully(name=NA,direct=TRUE)Argumentsname The name to be assigned to the graph.direct A boolean value,if the graph is directed or not.By default TRUE.ValueThe created multilayered graph,a mully object.Examplesg=mully("MyFirstMully",direct=FALSE)14plot3d plot.mully Plot the graph in2DDescriptionPlot the graph in2DUsage##S3method for class mullyplot(x,layout,...)Argumentsx The input graphlayout The layout.Can either be random or scaled...Other arguments to be passed to plot.igraphValueNo return value.A2D plot of the given graph is created.Examplesg=mully::demo()plot(g,"Scaled")plot3d Plot the graph in3D using rglDescriptionPlot the graph in3D using rglUsageplot3d(g,layers=TRUE,bel=NA,bel.color=NA,vertex.plac="circle",edge.color=NA,edge.width=5,edge.arrow.size=10,edge.arrow.width=1)print.mully15Argumentsg The input graphlayers A boolean whether to add the layers or notbel The vertices’labelsbel.colorThe vertices’colors.If not specified,the colors will be chosen randomly vertex.plac The placement form of the vertices on the layer.Can either be"circle"which will place them on a circle,or"disc"which will place them randomly on a disc.The default is"circle"edge.color The edges’colors.If not specified,inter-edges are black,and intra-edges have the same color as the nodes on the layeredge.width The edge width.Default set to5.edge.arrow.sizeThe edges’arrow size.Default set to10edge.arrow.widthThe edges’arrow width.Default set to1ValueNo return value.A3D plot of the given graph is created.NoteThis function can take the following arguments supported and not ignored by rglplot:bel, bel.color,edge.color,edge.width,edge.arrow.size,edge.arrow.width.Examplesg=mully::demo()labels=getNodeAttributes(g)$nameplot3d(g,layers=TRUE,bel=labels,edge.width=6)print.mully Print functionDescriptionPrint functionUsage##S3method for class mullyprint(x,...)16removeEdgeArgumentsx The input graph...Other arguments to be passed to printValueNo return value.The given graph is printedExamplesg=mully::demo()print(g)removeEdge Delete an edgeDescriptionDelete an edgeUsageremoveEdge(g,nodeStart,nodeDest,attributes=NA,multi=FALSE)Argumentsg The input graphnodeStart Thefirst endpoint of the edgenodeDest The second endpoint of the edgeattributes The attributes of the edge to delete.Required if the nodes are multi-connected multi A boolean.Specifies whether to delete multiple edges or not,in case they exist. ValueThe mully graph with the deleted edgesExamplesg=mully::demo()removeEdge(g,"dr1","d2",multi=TRUE)removeLayer17 removeLayer Delete a layer or a set of layers from a graphDescriptionDelete a layer or a set of layers from a graphUsageremoveLayer(g,name,trans=FALSE)Argumentsg The input graph.name The name or the list of the names of the layers to be deleted.trans A boolean whether to insert transitive edges or notValueThe mully graph,with the given layer and its corresponding nodes and edges removed.Examplesg=mully::demo()removeLayer(g,"gene",trans=TRUE)removeNode Delete a node or a set of nodes from a graphDescriptionDelete a node or a set of nodes from a graphUsageremoveNode(g,name,trans=FALSE)Argumentsg The input graph.name The name or the list of names of the nodes to be deleted.trans A boolean whether to insert transitive edges or notValueThe mully graph,with the nodes deleted.18removeNodeExamplesg=mully::demo()removeNode(g,"dr1",trans=TRUE)IndexaddEdge,3,3addLayer,3,4addNode,3,4demo,5exportCSV,5getEdgeAttributes,3,6getIDEdge,7getIDNode,7getLayer,8getLayersCount,8getNode,9getNodeAttributes,3,9 importEdgesCSV,10importGraphCSV,10 importLayersCSV,11 importNodesCSV,11is.mully,12isLayer,12merge,13mully,3,13mully-package,2plot.igraph,14plot.mully,3,14plot3d,3,14print.mully,15removeEdge,3,16removeLayer,3,17removeNode,3,17rglplot,1519。
JS正则表达式修饰符中multiline(m)用法分析
JS正则表达式修饰符中multiline(m)⽤法分析本⽂实例分析了JS正则表达式修饰符中multiline(/m)⽤法。
分享给⼤家供⼤家参考,具体如下:JavaScript正则表达式有3种修饰符/i、/m和/g。
/i是我们最常⽤,也是最好理解的,代表正则表达式匹配的时候不区分⼤⼩写。
var regex = /abc/i;alert(regex.test("aBc"));//true/m代表多⾏模式multiline,如果⽬标字符串中不含有换⾏符\n,即只有⼀⾏,那么/m修饰符没有任何意义。
var multiline = /abc/m;var singleline = /abc/;//⽬标字符串不含换⾏符\nvar target = "abcabcabc";如果正则表达式中不含有^或$匹配字符串的开头或结尾,那么/m修饰符没有任何意义。
//正则表达式不含^或$var multiline = /abc/m;var singleline = /abc/;var target = "abcab\ncabc";也就是说只有当⽬标字符串含有\n,⽽且正则表达式中含有^或$的时候,/m修饰符才有作⽤。
如果 multiline 为 false,那么“^”与字符串的开始位置相匹配,⽽“$”与字符串的结束位置相匹配。
如果 multiline 为 true,那么“^”与字符串开始位置以及“\n”或“\r”之后的位置相匹配,⽽“$”与字符串结束位置以及“\n”或“\r”之前的位置相匹配。
var mutiline = /^abc/m;var singleline = /^abc/;var target = "ef\r\nabcd";alert(mutiline.test(target));//truealert(singleline.test(target));//false\r\n在windows下代表换⾏,如果只有1个\n也是⼀样的效果。
multer使用方式
multer使用方式Multer是一个Node.js中的中间件,用于处理文件上传。
它可用于将图像、视频、音频和其他文件上传到您的Node.js服务器。
使用Multer,您可以方便地上传和管理文件,这篇文章将介绍Multer的使用方式。
安装Multer在使用Multer之前,需要安装它。
使用npm,在控制台中输入以下代码即可安装。
```npm install multer```Multer的使用方式上传文件需要使用Multer的`multer`函数创建一个中间件。
此函数需要传递一些参数以获得所需的上传功能。
下面是一些示例代码,演示如何使用Multer。
```// 引入Multerconst multer = require('multer');// 创建一个multer中间件const upload = multer({dest: 'uploads/'});// 处理文件上传app.post('/upload', upload.single('file'), (req, res) => {res.send('file uploaded');});```在上述代码中,`multer`函数创建了一个中间件,以处理文件上传。
它采用一个包含一些配置的对象作为参数。
可以为`dest`指定路径来设置上传的文件保存目录。
`upload`对象包含一些有用的方法,例如`single`和`array`。
这些方法用于指定文件上传字段的名称。
在上面的示例代码中,使用了`single`,表示只允许上传一个文件。
如果需要上传多个文件,则应使用`array`方法。
上传多个文件如下示例代码将演示如何使用`array`方法上传多个文件。
```const multer = require('multer');const storage = multer.diskStorage({destination: function (req, file, cb) {cb(null, 'uploads/')},filename: function (req, file, cb) {cb(null, file.originalname)}});const upload = multer({ storage:storage }).array('files');app.post('/upload', function (req, res) {upload(req, res, function (err) {if (err instanceof multer.MulterError) {return res.status(500).json(err)} else if (err) {return res.status(500).json(err)}return res.status(200).send(req.files)})});```在这个例子中,将使用`diskStorage`来指定文件保存的目录和文件名。
multer中间件的的同步和异步的使用
multer中间件的的同步和异步的使⽤multerMulter 是⼀个 node.js 中间件,⽤于处理multipart/form-data类型的表单数据,它主要⽤于上传⽂件。
它是写在之上⾮常⾼效。
使⽤Multer 会添加⼀个body对象以及file或files对象到 express 的request对象中。
body对象包含表单的⽂本域信息,file或files对象包含对象表单上传的⽂件信息。
下载安装npm install multer配置//configconst multer = require('multer');const storage = multer.diskStorage({destination: (req, file, cb) => {cb(null, "./public/upload");},filename: (req, file, cb) => { //req:请求对象 file:⽂件对象 cb:回调函数let fileFormat = (file.originalname).split('.');cb(null, fileFormat[0]+'-'+Date.now()+'.'+fileFormat[fileFormat.length - 1]);}});const upload = multer({storage: storage});module.exports = upload;同步提交HTML:<!--multipart/form-data必须使⽤post这个数据格式,就是为了不会对上传的⽂件进⾏处理--><form action="/" method="post" enctype="multipart/form-data"><!--这⾥必须要有name属性,在后⾯的singer⽅法中要使⽤--><input type="file" name="img1"><input type="submit" value="提交"></form>对应路由的处理:app.post('/tUpload', upload.single('img1'), (req, res) => {res.render('index', {url: ''});})异步提交异步提交使⽤ajax来提交这⾥主要使⽤了Formdata()全局对象,来提交到后台。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MulLine.js 使用说明具体描述 (3)一约定和声明 (3)二基础特性: (4)1如何初始化MulLine (含属性说明) (4)2 如何在JavaScript中给MulLine赋值 (5)3 如何在JavaScript中从MulLine取值 (5)4 如何在JSP中得到MulLine中的值(必须提交页面) (5)5 如何在JSP中给MulLine赋值 (6)6 如何添加一行 (6)7 如何删除一行 (6)8 如何删除所有行 (7)9 如何删除所有空行 (7)10 如何隐藏或显示‖+‖和‖--―标记 (7)11 如何锁定或解锁‖+‖和‖--―标记 (7)12 如何隐藏一列(不鼓励使用该方法:显示效果不好) (7)13 如何得到行数和列数 (8)14 如何设置某一列的初始化值 (8)15 如何设置在页面上的显示宽度 (8)16 如何设置使指定行的某一列得到焦点 (9)17 如何判断指定行的某一列是否得到焦点 (9)三中级特性: (9)1 如何使用CheckBox 选项框 (9)1.1 如何初始化CheckBox 选项框 (9)1.2 如何判断该行CheckBox 选项框被选中 (9)1.3 如何选中或不选中所有行的CheckBox选项框 (10)1.4 如何删除选中CheckBox 选项框的所有行 (10)1.5 如何选中指定行的CheckBox 选项框 (10)2 如何使用Radio 单选框 (10)1.1 如何初始化Radio 单选框 (10)2.2 如何判断该行的Radio 单选框被选中 (11)四高级特性: (11)1 如何在MulLine中添加代码选择功能(即双击弹出选择下拉框) (11)2如何在MulLine中添加代码选择功能(即双击弹出选择下拉框,从前端自己传入数据) (13)3 如何在MulLine中添加字段数据校验功能 (15)4 如何在MulLine中添加双击相应事件,响应自己编写的JS函数 (15)5如何在MulLine中单击CheckBox时响应开发人员外部编写的JS函数 (16)6 如何在MulLine中单击RadioBox时响应开发人员外部编写的JS函数 (18)7 如何在MulLine中单击―+‖按钮和―–‖号按钮时响应开发人员外部编写的JS函数 .. 198 如何在分页显示数据时,使后续页的MulLine中的显示序号与纪录数一致 (20)9 如何在使用代码选择功能时,设置弹出的选择下拉框的宽度 (21)10 如何在使用代码选择功能时,强制刷新数据源 (21)11 如何在查询时使设置的代码选择列将编码显示为对应的汉字 (21)五错误描述和诊断 (21)1 如果IE弹出对话框:没有该对象或未知的对象或者对象没有该方法 (21)2 如果弹出对话框:MulLine.js中某某方法出现异常 (21)3如果弹出对话框:MulLinejs中某某方法中指定了错误的列(或者行) (22)4如果出现其它错误信息 (22)具体描述一约定和声明(1) 你使用得IE版本必须是5.5以上(包括5.5)(2)在后续的所有说明中,均假定MulLine的对象名为:ObjGrid ;该MulLine对象所在的表单名为:fm(3)后续用到的行和列都是从0行0列开始。
和数组是一致的(注:除非有特殊声明)(4)所有调用方法和属性的名字遵循命名规则:首字母小写,后续单词首字母大写。
方法如:clearData,setRowColData,lock,unLock属性如:mulLineCount,canAdd , locked(5) 具体实例:请看Z:\resource\模版程序\testMulLine下的示范待码)运行:http://hostName:8900/ui/testMulLine/mulineTest.html (hostName是主机名)(6)高级特性中,均借助于外部函数,必须包含相应的外部文件二基础特性:1如何初始化MulLine (含属性说明)(1) 在显示MulLine的页面上(例如xxxInput.jsp文件)必须有如下代码:<span id="spanObjGrid " ></span> 其位置放在表单fm中id名称必须是:span+MulLine的对象名(这里是ObjGrid)(2)在JS文件中(如xxxInit.js文件)的JavaScript函数中如下设置假定产生3行两列的MulLine对象<script language="JavaScript">function initObjGrid() //函数名为init+MulLine的对象名ObjGrid{var iArray = new Array(); //数组放置各个列try{iArray[0]=new Array();iArray[0][0]="序号"; //列名(序号列,第1列)iArray[0][1]="30px"; //列宽iArray[0][2]=10; //列最大值iArray[0][3]=0; //1表示允许该列输入,0表示只读且不响应Tab键// 2 表示为容许输入且颜色加深.iArray[1]=new Array();iArray[1][0]="示范列1"; //列名(第2列)iArray[1][1]="30px"; //列宽iArray[1][2]=10; //列最大值iArray[1][3]=0; //是否允许输入,1表示允许,0表示不允许//后续可以添加N列,如上设置//生成对象区,规则:对象名=new MulLineEnter(―表单名‖,‖对象名‖);ObjGrid= new MulLineEnter( "fm" , "ObjGrid" );//设置属性区(需要其它特性,在此设置其它属性)ObjGrid.mulLineCount = 3 ; //行属性:设置行数=3ObjGrid.displayTitle = 1; //标题属性:1显示标题(缺省值) ,0隐藏标题//对象初始化区:调用对象初始化方法,属性必须在此前设置ObjGrid.loadMulLine(iArray);}catch(ex){ alert(ex); }}</script>上面是MulLine的初始化的基本用法,如果用到其他功能,请参阅该功能的详细说明,会有一些相关的初始化的附加设置。
2 如何在JavaScript中给MulLine赋值使用MulLine对象的setRowColData(row,col,value)方法参数为:行,列,值;返回值为真假如;ObjGrid. setRowColData(0,1,‖赋给第0行第1列的值‖);注意:是从0行0列开始。
因此,我们认为0行是第0行,0列是第0列注意:第3个参数,value如果不是变量,请用引号扩住注意:如果程序弹出对话框:提示setRowColData时指定了错误的行(或列),那么意味着你在赋值时指定的行或列超出了范围(即小于0或者大于行数或列数)注意:请不要给0列赋值,因为是序号列,会自行变化3 如何在JavaScript中从MulLine取值(1) 取出指定的第几行第几列的值使用MulLine对象的getRowColData(row,col)方法参数为:行,列; 返回值:指定行和列的值如:var value=ObjGrid. getRowColData(0,1);注意:是从0行0列开始。
因此,我们认为0行是第0行,0列是第0列注意:如果程序弹出对话框:提示getRowColData时指定了错误的行(或列),那么意味着你在取值时指定的行或列超出了范围(即小于0或者大于行数或列数)注意:可以得到0列(序号列)的值(2)取出指定的某一行的值使用MulLine对象的getRowData(row) 法方参数为:行号; 返回值:指定行的所有值,返回形式为一维数组如:var iArray=ObjGrid. getRowColData(0);注意:是从0行开始。
因此,我们认为0行是第0行。
注意:如果程序弹出对话框:提示getRowData时指定了错误的行,那么意味着你在取值时指定的行超出了范围(即小于0或者大于行数)注意:数组iArray值不包括序号列的值。
即iArray[0]为该行第1列的值,依次类推。
4 如何在JSP中得到MulLine中的值(必须提交页面)提交有MulLine的页面后,在接受页如下处理:<%String tGridNo[] = request.getParameterValues("ObjGridNo"); //得到序号列的所有值String tGrid1 [] = request.getParameterValues("ObjGrid1"); //得到第1列的所有值String tGrid2 [] = request.getParameterValues("ObjGrid2"); //得到第2列的所有值Int Count = tGridNo.length; //得到接受到的记录数For(int index=0;index< Count;index++){System.out.println("GridNO="+ tGridNo [index]);System.out.println("Grid 1="+ tGrid1 [index]);System.out.println("Grid 2="+ tGrid2 [index]);}%>如果需要处理被选中的纪录(即CheckBox 和Radio 框)请参看中级特性说明5 如何在JSP中给MulLine赋值即在JSP页面中内嵌JavaScript代码,如:<script language="javascript">parent.fraInterface..ObjGrid.addOne("ObjGrid"); //添加一行,见该方法说明parent.fraInterface..ObjGrid.setRowColData(行,列,值);</script>注意:不要使用parent.fraInterface..fm .ObjGrid 方式,否则会报错:没有该对象注意:在将JSP变量传给setRowColData方法的参数3时,请用引号扩住。