Jquery:在检查最后一个字母时将文本从表单复制到 DIV
Jquery: Copy text from a form to a DIV while checking the last letter
在我的HTML表单上,用户可以输入他们的名字。然后,他们的名字将作为书名的一部分出现在 DIV 中。
书名使用撇号(例如艾米的假日专辑)。
如果用户输入的名称以 S 结尾,我不希望出现撇号 s。(例如,它应该是克里斯的假日专辑而不是克里斯的假日专辑)。
我也只希望当表单具有一类 apostrophe
时发生这种情况。如果此类不存在,则应按原样复制名称,不带任何撇号或"s"。
我知道你可以使用 slice() 来获取元素的最后一个字符,所以我想我可以把它与 if 语句结合起来。但它似乎不起作用。
这是JSFiddle
这是我的 HTML:
<div><b class="title"></b> Holiday Album</div>
这是我的Jquery(1.8.3):
$(document).ready(function() {
$('.name').keyup(function() {
var finalname = text($(this).val());
var scheck = finalname.slice(-1);
var finaltitle;
if ($(".apostrophe")[0]) {
if (scheck == 's') {
finaltitle = finalname + "'";
}
else {
finaltitle = finalname + "'s";
}
$('.title').text(finaltitle);
}
else {
$('.title').text(finalname);
}
});
});
不需要文本方法
var finalname = $(this).val();
检查小提琴
使用
var finalname = $(this).val();
而不是
var finalname = text($(this).val());
简体版
$(document).ready(function() {
//Code fires when user starts typing:
$('.name.apostrophe').keyup(function() {
if (this.value.indexOf("'s") != -1 ) {
$('.title').text(this.value.replace(/'s/g, "'"));
} else {
$('.title').text(this.value)
}
}); /* Capture Personalised Message */
});
这也将仅将 's 的所有匹配项替换为 '。
希望对您有所帮助!
相关文章:
- 当选择值x时,Javascript需要在正确的位置显示文本区域,从而循环通过具有选择选项的表单
- 输入文本框为空时的阻止按钮asp.网络表单
- 或者在表单上选择默认选项文本(选择1)
- 提交表单后,Watir文本框输入未持续(重置为以前的文本框输入)
- 提交表单时,Javascript(JQuery)不会在文本区域中填充内容
- 表单输入字段随着溢出的文本而增长
- 表单文本框未自动更新
- 使用javascript提交表单并从字段/单选框/复选框/文本区域获取数据
- 单击时从表单中删除特定文本
- 在HTML表单中键入时返回文本
- 使用jquery在悬停时展开文本表单
- 将从服务器获取的数据加载到输入文本表单中
- 如何使用文本表单输入的一部分来添加并使其转到 URL
- 将HTML中的文本表单值输入到Javascript函数中
- JS救援文本表单
- 使用crypto.js创建文本表单生成器
- 如何在将逗号提交到服务器之前,使用JS删除输入文本表单中的逗号
- 文件上传和数据(文本)表单转化为HTML表格
- Javascript禁用/启用输入文本表单
- 输入文本表单,使用javascript清除并恢复表单内容的问题