相关疑难解决方法(0)

File.separator或File.pathSeparator

File课堂上有两个字符串,separatorpathSeparator.

有什么不同?我什么时候应该使用另一个?

java file path-separator

493
推荐指数
3
解决办法
37万
查看次数

如何确定JavaScript中的OS路径分隔符?

如何在JavaScript中告诉脚本运行的操作系统中使用了什么路径分隔符?

javascript directory file

61
推荐指数
4
解决办法
4万
查看次数

我何时使用PHP_EOL而不是\n,反之亦然?Ajax/Jquery客户端问题

我有一个php解析器,它通过换行符拆分给定的字符串,执行如下操作:

$lines = explode(PHP_EOL,$content);
Run Code Online (Sandbox Code Playgroud)

在服务器端工作时,解析器工作正常.但是,当我通过ajax(使用jquery的$ .post方法)通过post传递内容时,问题就出现了:不会识别换行符.经过近一个小时的测试和头痛后,我决定将PHP_EOL改为"\n"并且它有效:

$ lines = explode("\n",$ content);

现在它有效!该死的我失去了这么多时间!当有人正确地使用PHP_EOL和"\n"时,有人可以解释一下,这样我以后可以节省时间吗?感谢你的答案;)

php ajax jquery post line-breaks

22
推荐指数
3
解决办法
3万
查看次数

确定JavaScript中的操作系统换行符

我生成供用户下载一个文件,我想插入正确的换行符(个),他们的平台(\n,\r,或\r\n).

我知道以下解决方案,但没有一个完全解决我的问题:

  • 查询navigator.platformnavigator.appVersion.这些属性已被弃用,所以我宁愿不依赖它们.
  • FirefoxNodeJS有特定的方法.这些不适用,因为我正在创建一个网站,我更喜欢它是否适用于所有浏览器.
  • 有办法找到浏览器的换行字符,但我感兴趣的是用户的平台.(这些是不同的:Firefox总是使用\n,无论操作系统如何.)

javascript newline

8
推荐指数
1
解决办法
551
查看次数

使用行分隔符(Javascript)替换textarea中的<br />

我想这将在两分钟内得到解答,但我无法谷歌解决方案.

试过:这个,这个

我有一个textarea,它首先从服务器收到一些数据(动态使用AJAX).textarea中的文字可能如下所示:

Hello&nbsp;Cruel&nbsp;<br&nbsp;/>World!
Run Code Online (Sandbox Code Playgroud)

我的用户不喜欢这个:)

所以我写了一个非常简单的函数:

    function replaceHtml( string_to_replace ) 
    {
        var result = replaceAll( string_to_replace, "&nbsp;", " ");
        result = result.replace(/<br\s*\/?>/mg,"\n\r"); // or "\n", "\r", "\r\n"
        return result;
     }
Run Code Online (Sandbox Code Playgroud)

我的输出如下:

Hello Cruel World!
Run Code Online (Sandbox Code Playgroud)

代替:

Hello Cruel
World!
Run Code Online (Sandbox Code Playgroud)

我想要一个最多5行的解决方案,可以应用于所有浏览器和操作系统

顺便说一句,我不是正则表达的粉丝,所以也许真正的问题就在那里..

UPDATE

从这个答案和Michael_B先生我得到了这个解决方案,这对我有用,但是我有一个预感,这个角色可能不是最好的解决方案:

function replaceHtml( string_to_replace ) 
{
    return string_to_replace.replace(/&nbsp;/g, ' ').replace(/<br.*?>/g, '\u2028');
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery newline cakephp-2.1

3
推荐指数
1
解决办法
2万
查看次数

在浏览器中,如何确定哪种换行符适合操作系统?

\n\r\n(或什至\r)换句话说。我很想避免嗅探用户代理字符串。

第一次尝试:

var osLineBreak = (function () {
  var p = document.createElement('p');
  p.innerHTML = '<br>';
  return p.innerText;
}());
Run Code Online (Sandbox Code Playgroud)

不幸的是,Firefox不提供innerText,并且textContent在这种情况下返回空字符串。

第二次尝试:

var osLineBreak = (function () {
  var
    lineBreak,
    body = document.body,
    range = document.createRange(),
    selection = window.getSelection(),
    p = document.createElement('p');

  // we cannot make a selection unless `p` is in the DOM,
  // so ensure that it is not visible when we insert it
  p.style.position = 'absolute';
  p.style.left = '-9999px';
  // …
Run Code Online (Sandbox Code Playgroud)

javascript dom cross-browser

0
推荐指数
1
解决办法
685
查看次数