本文以实例形式展示了C#与js实现去除textbox文本框里面重复记录的方法!具体方法如下:
现有如下问题:页面有一个textbox文本框(是多行的),比如我在文本框里面输入:111,222,333,555当再输入111的时候会自动清除掉这个111,或者是在提交一个按钮前清除掉这个相同记录!
解决方案如下:
以逗号分割成一个数组 有一个Split()方法
然后比较 里面相等的就删除掉后面的那个 形成新的实例
再把新实例按格式输进来~
C#代码如下:
string temp_str = \"111,222,333,111,444,222\"; temp_str = string.Join(\",\", Regex.Split(temp_str, @\"[,,]\").Distinct());//111,222,333,444
此外,还可以用js实现这一功能,实现代码如下:
<script type=\"text/javascript\" language=\"javascript\"> $(document).ready( function() { $(\'#txt_test\').keyup( function() { var txt = $(\'#txt_test\').val(); var str = new Array(); str = txt.split(\",\"); var strc = txt.substring(txt.lastIndexOf(\',\') + 1, txt.length); for (var i = 0; i < str.length - 1; i++) { if (str[i] == strc) { alert(strc); var txt1 = txt.replace(txt.substring(txt.lastIndexOf(\',\'), txt.length), \"\"); $(\'#txt_test\').val(txt1); break; } } } ) } ) </script>
前台控件如下:
<asp:TextBox ID=\"txt_test\" runat=\"server\" TextMode=\"MultiLine\"></asp:TextBox>
这样写唯一有点不好的地方是
如果输入形如:111,
222,
111
这样排列中间有回车的话,需要对第一行单独判断一下,最后是能够写一段处理回车,空格之类的JS在这个方法里面,对此读者可以自己动手测试一下!
本文地址:https://www.stayed.cn/item/9631
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我