博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery插件之jquery editable plugin--点击编辑文字插件
阅读量:5770 次
发布时间:2019-06-18

本文共 3118 字,大约阅读时间需要 10 分钟。

  jeditable是一个jquery插件,它的优点是可以就地编辑,并且提交到服务器处理,是一个不可多得的就地编辑插件。(注: 就地编辑,也有称即时编辑?一般的流程是这样的,当用户点击网页上的文字时,该文字就会出现在一个编辑框中,用户对文字进行修改完成后点击提交按钮,新的文本将发送到服务器上,然后表单消失,显示最新编辑的文本。),你可以通过这个来亲自体验下。

    官网:

基本的使用方法如下:

首先编辑一个 html 文件,包含这么一段:

Dolor
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.

然后我们使用如下的 JS 代码来实现即时编辑(要先引入 Jeditable 插件):

$(document).ready(function() {    $('.edit').editable('http://www.example.com/save.php');});

 

实现不同内容的编辑以及更多的定制项:

 
$(document).ready(function() {    $('.edit').editable('http://www.example.com/save.php', {        indicator : 'Saving...',        tooltip   : 'Click to edit...'    });    $('.edit_area').editable('http://www.example.com/save.php', { type : 'textarea', cancel : 'Cancel', submit : 'OK', indicator : '', tooltip : 'Click to edit...' }); });
 

上面的定制项包括按钮的文本,提示信息以及提交时的 loading 图片显示等等。

那么当用户点击了确定按钮时,发送到服务器上的是什么数据呢?

数据内容包含了编辑框的 ID 以及新的内容:id=elements_id&value=user_edited_content

你也可以使用下面的方法来修改默认的参数名:

$(document).ready(function() {    $('.edit').editable('http://www.example.com/save.php', {         id   : 'elementid',        name : 'newvalue'    });});

修改后传递的数据变成:elementid=elements_id&newvalue=user_edited_content

如果单行文本框不注意满足你的要求,可以使用 textarea 多行文本编辑框: 

 
$(document).ready(function() {    $('.edit_area').editable('http://www.example.com/save.php', {         loadurl  : 'http://www.example.com/load.php',        type    : 'textarea',        submit  : 'OK' }); });
 

另外 Jeditable 还支持下拉选择框哦:

$('.editable').editable('http://www.example.com/save.php', {     data   : " {'E':'Letter E','F':'Letter F','G':'Letter G', 'selected':'F'}",    type   : 'select',    submit : 'OK'});

 

或者你也可以从服务器获取下拉选择的数据内容:

 
 

然后通过 loadurl 指定这个服务器输出数据的 URL 地址:

$('.editable').editable('http://www.example.com/save.php', {     loadurl : 'http://www.example.com/json.php',    type   : 'select',    submit : 'OK'});

 

如果你希望给组件设定不同的样式,可以这样:

 
$('.editable').editable('http://www.example.com/save.php', {     cssclass : 'someclass'});$('.editable').editable('http://www.example.com/save.php', {     loadurl : 'http://www.example.com/json.php',    type    : 'select',    submit  : 'OK', style : 'display: inline' });  
 

或者:

$('.editable').editable('http://www.example.com/save.php', {     loadurl : 'http://www.example.com/json.php',    type    : 'select',    submit  : 'OK',    style   : 'inherit'});

最后来点高级的内容,如果你希望使用一个 JS 函数而不是 URL 来处理提交,可以这样:

 
$('.editable').editable(function(value, settings) {     console.log(this);    console.log(value);    console.log(settings);    return(value); }, { type : 'textarea', submit : 'OK', });
 

处理回调: 

 
$('.editable').editable('http://www.example.com/save.php', {     type     : 'textarea',    submit   : 'OK',    callback : function(value, settings) {        console.log(this); console.log(value); console.log(settings); } });
 

使用附加参数:

$(".editable").editable("http://www.example.com/save.php";, {   submitdata : {foo: "bar"};});
 

直接从URL获取显示内容:

$(".editable").editable("http://www.example.com/save.php";, {    loadurl : "http://www.example.com/load.php"});

英文原文:

转载地址:http://hdiux.baihongyu.com/

你可能感兴趣的文章
SQL中的Null深入研究分析
查看>>
多人交互与体感游戏开发相关技术说明
查看>>
Linux下的Memcache安装
查看>>
调用约定
查看>>
【转】ROS之topic和service通信比较
查看>>
[转]Linux 线程实现机制分析 Linux 线程实现机制分析 Linux 线程模型的比较:LinuxThreads 和 NPTL...
查看>>
lesson7:java线程池
查看>>
【2019年OCP新题】OCP题库更新出现大量新题-11
查看>>
N-Queens
查看>>
mysql允许远程连接
查看>>
day8 socket编程CS模型完善错误处理
查看>>
线程基础8-quene讲解
查看>>
bootstrap开始咯
查看>>
linux清理n天前的文件命令
查看>>
python windows下获取路径时有中文处理
查看>>
【转】AMD 的 CommonJS wrapping
查看>>
ArcGIS制图之Sub Points点抽稀
查看>>
博客检查
查看>>
php扩展下载网站
查看>>
自定义消息弹出框的一个很不错的实例
查看>>