JQuery TextArea的取值与赋值问题---(textarea中回车清空问题)

JQuery TextArea的取值与赋值问题

首先,说明这不是一个简单的问题!

先说取值:

$("#textarea").text();读取,最近测试时候发现在firefox中读取不出textArea的值,IE正常 于是修改为:

$("#textarea").val(); 问题解决,不过搜索时,发现有人提另一个问题:

当在一个textarea标签中键入一个回车时,实际上会插入2个符号:\n\r  \n 回车符 \r 换行符
如果用text()获取textarea中的值,那么存入数据库的数据就只会有\r
如果用val()获取textarea中的值, 那么存入数据库的数据就只会有\n
这样的区别就是,在IE下, 你如果是读取用text()存入的数据在展示在textarea中,那么数据的换行是正常的。
而读取用val()存入的数据在展示在textarea中,那么数据的就不会换行。 没有具体测试过看来用val()也不妥当。但是这也是必求之策。  
 
再说赋值: 看代码:
$("<div id='x1'><textarea id='t1'></textarea>" + "<textarea id='t2'></textarea></div>").appendTo("body");
$("#t1").text("AAA");
$("#t2").val("BBB");
alert("t1=" + $("#t1").text() + "/" + $("#t1").val());
alert("t2=" + $("#t2").text() + "/" + $("#t2").val());
alert($("#x1").html());

在IE下,不管用val()或text()设定,后续的读取都正常;

但在Firefox下,使用val()指定的值,画面上会出现,但是用text()或是透过html()检视时却是字串。因此在Firefox中,如果你希望设定给textarea值出现在html()中或可以被clone(),请用text(...)设定。

且慢!! 事情如果这麽单纯,那麽连小学生也会跨浏览器了。使用text()设定时得注意换行问题,若你在IE中下text("A\nA"),在显示时只会呈现空一格而不会换行。

依我测试的结果,在IE下text("A\r\A")得到显示结果比较接近预期,但是text("A\rA")在Firefox中显示时会换列,用text()取出时却是连在一起的... 这... 这... 这...

最后,只能采取懦夫策略,在呼叫.clone()前做了这件事迴避问题:

  $theDiv.find("textarea").each(function() { $(this).text($(this).val()); });

很丑,但看来是有效的! 如果有人有其他好点子,再分享一下吧!

【著名心得】没有噼成一字马的本事,不要跟别人说你会"跨"浏览器!

------------------重要问题----------------------------------

textarea中把回车键当作快捷键时候,并不要他显示换行动作。但浏览器处理了连个动作。

无赖$("textarea").val("");也清空不了里面的内容。网上资料查阅无数。竟多少前辈也被困于此,拳脚不得施展。

晚辈愚笨,偶然间坠入山洞山东,习得高人创的习武心得。追溯起源,终探得究竟。

看招:

$(document).keypress(function(e){

if(e.ctrlKey && e.which == 13 || e.which == 10 || e.which == 13) {

$("#send").click();

e.preventDefault();//屏蔽enter对系统作用。按后增加\r\n等换行

$("#what").val("");

}

});

e.preventDefault();就是屏蔽enter键接下来的操作,啊哈哈哈。知道此招的固然是高人,莫笑小弟之欣喜。

心得总结:

所谓的困难,就是克服过去的不值一提!

总结

技术生涯也好比漫漫人生路,总是不断地遇到问题,解决问题。当人也会遇到一些棘手的问题让人招架不住,隔着屁儿着凉死翘翘。

八过,咱们把一些遇到的问题,记下来。下载墙壁上,N年过后,某位后人遇到同类问题题,也不至于费尽心思浪费光阴啊。

整天浪费光阴于此,又何以解救天下苍生呢。

施主,你说贫僧说得对不对呀!啊哈哈哈……

以上文章转载自网络,是否正确并未验证,请谨慎使用。

JQuery TextArea的取值与赋值问题---(textarea中回车清空问题)——个人转载整理的更多相关文章

  1. jQuery radio的取值与赋值

    取值: $("input[name='radioName']:checked").val(); 赋值: $("input[name='radioName'][value= ...

  2. ZTree 获取选中的项,jQuery radio的取值与赋值

    $("input[name='Sex']:checked").val();//取值 $("input[name='radioName'][value=2]"). ...

  3. jQuery常用的取值或赋值的方法

    $(selector).data(name) 从被取元素返回附加的数据 存在一个div标签:<div data-meeting="hi Tom"></div> ...

  4. jQuery 表单元素取值与赋值方法总结

    一.普通文本框的赋值与取值 1.1.1赋值 <h2>jQuery 表单元素取值与赋值方法总结</h2> <input type="text" clas ...

  5. jquery select取值,赋值操作

    select">jquery select取值,赋值操作 一.获取Select 获取select 选中的 text : $("#ddlRegType").find( ...

  6. jQuery对表单元素的取值和赋值操作代码

    使用常规的思路:$(“#keyword”).value 取值是取不到的,因为此时$(‘#keydord’)已经不是个element,而是个jquery对象,所以应该使用:$(“#keyword”).v ...

  7. 浅谈jquery关于select框的取值和赋值

    浅谈jquery关于select框的取值和赋值   jQuery("#select_id").change(function(){}); // 1.为Select添加事件,当选择其 ...

  8. jQuery对表单元素的取值和赋值操作代码(转)

    使用常规的思路:$("#keyword").value 取值是取不到的,因为此时$('#keydord')已经不是个element,而是个jquery对象,所以应该使用:$(&qu ...

  9. jquery操作select取值赋值与设置选中[转]

    本节内容:jquery实现select下拉框的取值与赋值,设置选中的方法大全. 比如<select class="selector"></select> 1 ...

随机推荐

  1. 如何修改macbook的MAC地址

    修改命令 sudo ifconfig en0 ether xx:xx:xx:xx:xx:xx 查看 ifconfig en0 | grep ether 随机生产一个MAC地址 openssl rand ...

  2. PHP+MySQL实现海量数据导入导出的总结:is_numbric函数的坑

    前段时间有个需求:将生产环境的部分数据转移到测试服务器进行测试.由于只需要导入特定账号的数据,我就想着将写个脚本,将数据组装成sql语句导出为sql文件,然后转移到测试服务器,导入到MySQL中.想象 ...

  3. C语言学习记录_2019.02.09

    打印字符串:%s--------printf("%s","abcd"); 打印字符串数组中某一位:%c--------printf("%c" ...

  4. C语言__LINE__实现原理

    在test.c中写如下代码: 1 #include <stdio.h> 2 3 int main() 4 { 5     printf("line:%d\n", __L ...

  5. Python连接MySQL数据库执行sql语句时的参数问题

    由于工作需要,今天写了一个Python小脚本,其中需要连接MySQL数据库,在执行sql命令时需要传递参数,结果出问题了.在网上查了一下,发现有以下几种方式传递参数: 一.直接把sql查询语句完整写入 ...

  6. 2017-2018-1 20155338 加分项目——PWD的实现

    2017-2018-1 20155338 加分项目--PWD的实现 项目要求 1 学习pwd命令 2 研究pwd实现需要的系统调用(man -k; grep),写出伪代码 3 实现mypwd 4 测试 ...

  7. c++ 字符串和字符串库函数

    //有2个字符串定义如下: //char s1[38]="www.yjxsoft"; //char s2[]=".com"; //请编写一段代码,把字符串s2追 ...

  8. 洛咕 P2403 [SDOI2010]所驼门王的宝藏

    简单tarjan. 一行的横天门如果暴力连边会被卡成平方,所以只要相邻两个横天门连双向边,再随便选一个横天门向整行连边即可.纵寰门同理.ziyou门直接map暴力连边. 然后tarjan直接dp. / ...

  9. target属性用于返回最初触发事件的DOM元素。

    target属性用于返回最初触发事件的DOM元素. 在HTML文档中,我们为<p>元素绑定点击事件("click"),由于DOM元素的事件冒泡机制,我们点击<p& ...

  10. msil 笔记

    public class TestImpl : ITest { // Properties public string Address { get { return "abc"; ...