从链接的输入字段中删除文本时删除 NaN
Remove NaN when removing text from a linked input field
我一直在通过查看其他帖子来寻找答案,但我找不到任何可直接用于我的脚本的东西(但这也可能是我对 JavaScript 的无知......
我正在使用此脚本将 OnBlur 从外语脚本音译为拉丁字母:
<script>
function separation() {
var str = document.getElementById().value;
var res1 = str.charAt(0);
var res2 = str.charAt(1);
var res3 = str.charAt(2);
document.getElementById().innerHTML = res1+res2+res3;
}
var syllable_1 = {
'김' : 'Kim ',
'이' : 'Lee ',
'야' : 'Ya',
}
var syllable_2 = {
'김' : 'gim',
'이' : 'i',
'야' : 'ya',
}
function hangul_to_roman(hangul) {
return syllable_1[hangul.charAt(0)] + syllable_2[hangul.charAt(1)] + ( hangul.length >= 3 ? "-" + syllable_2[hangul.charAt(2)] : "" );
}
</script>
<input type="text" id="ttt" value="김김이" onBlur="document.getElementById('demo').value = hangul_to_roman(document.getElementById('ttt').value)" style="text-transform: capitalize">
<input type="text" id="demo" readonly>
在这里,您在小提琴中具有相同的脚本: http://jsfiddle.net/LGRAq/6/
第一个输入字段包含应该音译的内容,第二个显示音译; 但是,当删除第一个输入字段中的内容时,它会打印NaN,我想知道如何删除它。
有没有人会知道如何进行?非常感谢您的帮助!
当hangul.charAt(…)
不包含在syllable
映射中时,属性访问将产生undefined
。将两个undefined
加在一起将形成NaN
。您可以通过使用空字符串作为查找的默认值来防止显示它:
function hangul_to_roman(hangul) {
return (syllable_1[hangul.charAt(0)] || "")
+ (syllable_2[hangul.charAt(1)] || "")
+ (hangul.length >= 3 ? "-" + (syllable_2[hangul.charAt(2)] || "") : "");
}
<</div>
div class="answers"> 兄弟,我们也可以使用这种方式来删除 NaN 的出现。
var str = document.getElementById().value;
var res1 = str.charAt(0);
var res2 = str.charAt(1);
var res3 = str.charAt(2);
var res4 = res1+res2+res3;
if(!isNaN(res4))
document.getElementById().innerHTML = res4;
相关文章:
- 单击文本时删除文本框的默认数据
- 使用删除文本创建新行
- 为什么jQuery正在删除文本的最后一个字符
- 在验证之前从输入值中删除文本并提交
- 如何使用jquery从父元素中删除文本(不删除内部元素)
- 删除文本区域中某个文本后出现的换行符
- javascript:删除文本中选定元素的标记
- <tspan>文本</tspan>如果没有定义id或类,如何删除文本
- 从网站中删除文本选择限制的脚本
- 如何防止用户删除文本输入中的前三个字符
- 粘贴文本时删除文本区域中的字符
- 如何在文本输入中插入删除图标并实现删除文本
- 在 Ckeditor 中,删除文本前后的 br 标签
- 如何在javascript中使用动态ID删除文本框
- 如何删除文本节点
- Javascript 焦点删除文本突出显示
- 添加或删除文本框,然后使用 PHP 或 jquery 获取它们的值
- 动态删除文本框
- 当处于活动状态时,我如何删除文本修饰.我有以下代码,但链接带有下划线
- 使用 Javascript 添加文本框后动态删除文本框