惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Stack Overflow Blog
Stack Overflow Blog
S
SegmentFault 最新的问题
大猫的无限游戏
大猫的无限游戏
The GitHub Blog
The GitHub Blog
M
MIT News - Artificial intelligence
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
Last Week in AI
Last Week in AI
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
H
Help Net Security
Engineering at Meta
Engineering at Meta
Microsoft Security Blog
Microsoft Security Blog
阮一峰的网络日志
阮一峰的网络日志
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
Hugging Face - Blog
Hugging Face - Blog
C
Check Point Blog
F
Fortinet All Blogs
腾讯CDC
博客园 - Franky
WordPress大学
WordPress大学
U
Unit 42

博客园 - habin

利用KindEditor实现公司通讯录的维护 在winform嵌入外部应用程序 Devexpress RichEditControl 导入word文件后字体变为方正姚体的解决方案 Js下载文件到本地(兼容多浏览器) 解决lhgDialog插件在IE11浏览器的BUG Devexpress ChartControl 柱状图简单例子 解决“远程会话已断开连接,因为访问被拒绝导致许可证存储的创建失败,请使用提升的权限运行远程桌面客户端”问题 MVC项目初次发布到IIS可能会遇到的问题 Android Studio下载及离线升级方法 动态调用WebService 统计某个单词出现次数 不能在 Page 回调中调用 Response.Redirect 解决方法 替换文本框title提示文本 通过ashx获取JSON数据的两种方式 终于解决SQL Server 2008 64位系统无法导入Access/Excel的问题 2012/08/01 Asp.net项目部署ActiveReport jQuery Mobile对话框插件 JS实现日期比较 Apache根目录运行.net网站
JQuery TextExt 控件使用
habin · 2012-10-11 · via 博客园 - habin

 官网:http://www.textextjs.com

  兼容浏览器:火狐、IE9+、谷歌

         <script src="/js/textExt.js"></script>

         <script language="javaScript">

         $(document).ready(function() {

             $("#tdAddcry").live("click", bindTextArea);

         });
        
        function bindTextArea() {
            $("textarea:last").textext({
                plugins: 'autocomplete tags prompt ajax arrow',
                tagsItems: [],
                prompt: '添加参与人...',
                ajax: {
                    url: '/library/data/uid.json',
                    dataType: 'json',
                    cacheResults: true
                }
            })
             .bind('isTagAllowed', function(e, data) {
                    if ($(e.target).textext()[0]._plugins.tags._formData.toString().indexOf(data.tag) != -1)
                        data.result = false;
             });
        }

function addCanYuRen(_t) {

 var html ="<textarea name='txtparuser' rows='1' cols='50'></textarea>";

 var trl = $(".addCanyuren");
       $(_t).insertBefore(html);

}

 //有效性验证最难实现,搞了半天

function checkvalid() {
 var isvalid = true;
 $("input:[name='txtparuser']").each(function() {
                    if ($(this).val() == "" || $(this).val() == "[]") {
                        alert("请选择参与人!");
                        isvalid = false;
                        return false;
                    }
                });

                return isvalid;

 }

  

<body>

<div>     

<div class="addCanyuren"></div>

<span id="tdAddcry" onclick="addCanYuRen(this)" style="color:#0033FF; cursor:pointer; margin:5px; font-weight:bold;">添加参与人</span>

</div>


 json需要是这样格式的,因为这个控件不能存ID,所以ID放到括号里面了

[
"背包客(2)",
"rose(4)",
"snowbaby(12)"
]

//后台
using System.Text.RegularExpressions;

//如果存在多个textarea,用正则分割,如["rose(2)"],["mike(3)","baby(6)"]

                        List<Hashtable> parternerlist = new List<Hashtable>();

                       

string[] career = GetString("txtcareer").Split(',');
                        string[] rs = Regex.Split(GetString("txtparuser"), @"(?<=\]),(?=\[)");

                        int i=0;
                        foreach (string s in career)
                        {
                            Hashtable caht = new Hashtable();
                            caht.Add("Career", s);
                            caht.Add("PartUser", rs[i]);
                            parternerlist.Add(caht);
                            
                            i++;
                        }

                        HttpContext.Current.Session["parternerlist"] = parternerlist;

//写入数据库

                    List<Hashtable> parternerlist = (List<Hashtable>)System.Web.HttpContext.Current.Session["parternerlist"];
                    System.Web.HttpContext.Current.Session.Remove("parternerlist");

 if (parternerlist != null && parternerlist.Count > 0)
                    {
                        foreach (Hashtable element in parternerlist)
                        {
                            string[] paruserid= new string[4]{"0","0","0","0"} ;string[] arr = Regex.Replace(element["PartUser"].ToString(), @"[^\d,]+""").Split(',');
                            Array.Copy(arr, paruserid, arr.Length);
                            BLL.addPostParterner(postid, element["Career"].ToString(), Convert.ToInt32(paruserid[0] == "" ? "0" : paruserid[0]), Convert.ToInt32(paruserid[1] == "" ? "0" : paruserid[1]), Convert.ToInt32(paruserid[2] == "" ? "0" : paruserid[2]), Convert.ToInt32(paruserid[3] == "" ? "0" : paruserid[3]));
                        }
                    }