javascript - JavaScript 中的反斜杠

标签 javascript

在我的 javascript 代码中,我有

onchange="document.getElementById('user_name').value =  
 document.getElementById('theDomain').value + '\\' +
 document.getElementById('fake_user_name').value"

这里反斜杠不起作用。问题是什么? 应该怎么写呢?

示例: 我想通过使用域名(x)和假用户名(joe)来拥有“x.com\joe”,但当我使用“\”时,我得到的结果只是 joe

最佳答案

正如您所说,它位于 JavaScript 代码中,而不是作为 HTML 元素上的属性,

onchange="document.getElementById('user_name').value =
    document.getElementById('theDomain').value + '\\' +
    document.getElementById('fake_user_name').value"

正在设置一个字符串值,以""分隔。由于 \\ 位于字符串中,因此该字符串的值为

document.getElementById('user_name').value = 
document.getElementById('theDomain').value + '\' +
document.getElementById('fake_user_name').value

这意味着当该字符串作为代码运行时,它不再有效 - 只有一个反斜杠,它转义了结束单引号。

双转义反斜杠 ('\\\\'):

onchange="document.getElementById('user_name').value =
    document.getElementById('theDomain').value + '\\\\' + 
    document.getElementById('fake_user_name').value"

使用函数作为事件处理程序而不是计算的字符串。

关于javascript - JavaScript 中的反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3005545/

相关文章:

javascript - jquery 1.10.4 中面板的 Accordion 调整高度

javascript - 如何通过在 svg 中开始一个新循环来停止以前的动画

javascript - 模板化仅采用标题/内容参数的 HTML 代码块的简洁方法,其中内容可能很大且散布着换行符

javascript - Node.js 服务器 header

javascript - 单击外部背景 div 时如何退出弹出联系表单?

javascript - 我的网络 worker 似乎没有正确计算

javascript - 使用 javascript 访问最后一个 JSON 元素

javascript - 没有字体颜色的下划线颜色 Word Web 插件

javascript - "cannot read property length of null"- 谷歌

javascript - 为什么我的 'else' 不起作用?