用javascript替换两个字段中的特殊字符
我有一个表单可以添加一个带有新闻标题的字段,并希望使用此字段添加到url的标题。用javascript替换两个字段中的特殊字符,javascript,jquery,bind,keyup,Javascript,Jquery,Bind,Keyup,我有一个表单可以添加一个带有新闻标题的字段,并希望使用此字段添加到url的标题。 我想在另一个类似这样的领域重写标题live: 但我会替换特殊字符(空格、问号、感叹号……) 即使他们应该写在平原,这并不困扰我,但我不明白如何 例如: new article,like this ! 致: 请尝试下面的代码。。这只是一个起点。。根据需要定制 $("#label1").bind("keyup", changed).bind("change", changed); function changed
我想在另一个类似这样的领域重写标题live: 但我会替换特殊字符(空格、问号、感叹号……)
即使他们应该写在平原,这并不困扰我,但我不明白如何 例如:
new article,like this !
致:
请尝试下面的代码。。这只是一个起点。。根据需要定制
$("#label1").bind("keyup", changed).bind("change", changed);
function changed() {
$("#label2").val(this.value
.replace(/\s|,/g, '_') /* replace with _ */
.replace(/!/g, '')); /* simply remove */
}
演示:尝试下面的代码。。这只是一个起点。。根据需要定制
$("#label1").bind("keyup", changed).bind("change", changed);
function changed() {
$("#label2").val(this.value
.replace(/\s|,/g, '_') /* replace with _ */
.replace(/!/g, '')); /* simply remove */
}
演示:您可以更改以下内容:
$("#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);
您可以更改此设置:
$("#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);
根据您的JSFIDLE,您应该以以下方式编写
changed
函数:
function changed() {
var v = this.value.replace(/\W+/g, '-')
.replace(/-+$/, '')
.replace(/^-+/, '');
$("#label2").val(v);
}
根据您的JSFIDLE,您应该以以下方式编写
changed
函数:
function changed() {
var v = this.value.replace(/\W+/g, '-')
.replace(/-+$/, '')
.replace(/^-+/, '');
$("#label2").val(v);
}