我有一个表单可以添加带有新闻标题的字段,并希望使用此字段添加到网址的标题。
我想在另一个字段中重写标题:
http://jsfiddle.net/atmoner/5sPZa/1/
但我会替换特殊字符(空格,审讯,感叹......) 即使它们应该以简单的方式书写,也不会打扰我,但我不知道如何
例:
new article,like this !
要:
new-article-like-this
答案 0 :(得分:2)
你可以改变这个:
$("#label2").val(this.value);
到此:
var value = this.value;
value = value.replace(/[^a-zA-Z0-9]+/g, '-'); // special char(s) -> hyphen
value = value.replace(/^-|-$/g, ''); // remove leading/trailing hyphen
$("#label2").val(value);
答案 1 :(得分:1)
尝试以下代码..这只是一个起点..根据需要自定义。
$("#label1").bind("keyup", changed).bind("change", changed);
function changed() {
$("#label2").val(this.value
.replace(/\s|,/g, '_') /* replace with _ */
.replace(/!/g, '')); /* simply remove */
}
答案 2 :(得分:1)
根据你的jsfiddle,你应该用这种方式写changed
函数:
function changed() {
var v = this.value.replace(/\W+/g, '-')
.replace(/-+$/, '')
.replace(/^-+/, '');
$("#label2").val(v);
}