2015-10-19 49 views
0

在jQuery的文档,应提到的是为什么jQuery的val()strip回车?

目前,使用.VAL()上textarea元素条从浏览器报告的值回车字符。然而,当这个值通过XHR被发送到服务器时,回车被保留下来(或者被不包含在原始值中的浏览器添加)。可以使用valHook如下达到此问题的解决方法:

  1. 为什么jQuery的VAL()条回车?
  2. 看来,在Windows中,textarea换行符表示为\ n。在Mac中,它由\ r表示?如果是这样会剥离\ r导致问题?
  3. 当文档说“通过XHR,但回车被保留”是什么意思?

回答

0

我从这个链接http://bugs.jquery.com/ticket/9007得到这个和理顺了......

当问及一个textarea元素,“.VAL()”代码的价值 条所有回车符从浏览器报告的值。 (但是,当值被提交到服务器时,回车 被保留(或被浏览器添加,其原始值不包含在 中))和(自#6876)jQuery确保它们'再有在 序列化版本XHR(的XMLHttpRequest是提供给Web浏览器的脚本语言(如JavaScript)的API。它用于HTTP或HTTPS请求发送到Web服务器和背部加载服务器响应数据到脚本)目的。

与所报告的 “.VAL()”和外地之间的差异的问题,实际提交的内容是提供 一种‘最大长度’设施何时对可用字符在文本区域 报告,即代码必须说明在服务器上保留回车符 的情况(根据我的经验,很可能是 )。换句话说,在“字符倒计时”必须采取 到的事实是,当textarea的值(所报告的 的jQuery)包含换行符,那么它的实际长度真正重要的事情 - 在数据库或服务器端验证码 - 大于 换行符的数量。

现在显然这个数学很容易做到,并且在剥离这些回车的时候可能会有各种各样的优点。据我所知,行为不是 明确记录;对于“.val()”的描述肯定缺少 。我的观察结果是,事实上这种差异对许多作者而言并不为我所知,正如我上面所描述的那种设施 。

希望这有助于理解这种行为。

相关问题