标题案例/适当案例,除非使用Javascript连续上限

时间:2013-01-09 06:29:28

标签: javascript html

我有一个用户输入信息的表单,然后这些信息会在网站上公开显示。由于我不能信任用户正确输入信息,我正在使用javascript来纠正他们的错误。例如,其中一个字段要求您以下列格式输入人员姓名(正确的情况):名字

我正在使用以下功能将他们的输入转换为标题/原样:

var firstname = [the value the person entered on the form as the first name]
function toTitleCase(str) { return str.replace(/wS*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});}
toTitleCase(firstname);

我遇到的一个问题是,当人们故意在同一领域使用一系列全部大写字母时,如CFO或CPA(或其他需要全部大写字母的首字母缩略词)。例如,如果他们输入:“名字CPA”,则javaascript函数将其转换为“First Name Cpa”,这几乎是正确的......但CPA需要保持全部大写。

这对我来说是一个脑筋急转弯,因为我无法找到解决方案。有帮助吗?无论解决方案是什么,它绝对必须是一个javascript解决方案,如果你能想出一个。

1 个答案:

答案 0 :(得分:0)

不幸的是,这可能是不可能的。可能有效的唯一解决方案是拥有应具有特定大小写设置的单词/短语列表。但要抓住像麦当劳这样永无止境的名单也很难。因此,最好不要尝试修复条目或只是手动查看条目。