使用 jQuery 从文本区域单击 Add/Remove 特定字符串
Onclick Add/Remove specific string from textarea using jQuery
我有一个带有一些选择的表单,可以自动在文本区域中填充一个句子,但是,如果他们再次单击它,我将无法删除它添加到文本区域的句子。
我只想清除整个 textarea 值,但这行不通,因为他们可能点击了 2 个预填充,而我只想删除他们点击的预填充添加的特定内容。
var contactTextarea = jQuery('.form-contents .ori-textarea .query-textarea-ori');
jQuery( "#query-telcoedge" ).click(function() {
prefill = jQuery(this).attr('rel');
if(jQuery(this).hasClass('active')){
} else {
contactTextarea.val(contactTextarea.val() + prefill + '\n');
}
jQuery(this).toggleClass('active');
});
要删除文本,您可以使用 .replace
。
这只会删除第一个匹配项,因此如果用户复制您的文本使其出现两次,则只会删除第一个。要删除所有内容,您可以使用 .replaceAll
。 (not IE11)
如果文本已被用户更改,它不会删除它
if (jQuery(this).hasClass('active')) {
contactTextarea.val(contactTextarea.val().replace(prefill + '\n', ""));
} else ...
我有一个带有一些选择的表单,可以自动在文本区域中填充一个句子,但是,如果他们再次单击它,我将无法删除它添加到文本区域的句子。
我只想清除整个 textarea 值,但这行不通,因为他们可能点击了 2 个预填充,而我只想删除他们点击的预填充添加的特定内容。
var contactTextarea = jQuery('.form-contents .ori-textarea .query-textarea-ori');
jQuery( "#query-telcoedge" ).click(function() {
prefill = jQuery(this).attr('rel');
if(jQuery(this).hasClass('active')){
} else {
contactTextarea.val(contactTextarea.val() + prefill + '\n');
}
jQuery(this).toggleClass('active');
});
要删除文本,您可以使用 .replace
。
这只会删除第一个匹配项,因此如果用户复制您的文本使其出现两次,则只会删除第一个。要删除所有内容,您可以使用 .replaceAll
。 (not IE11)
如果文本已被用户更改,它不会删除它
if (jQuery(this).hasClass('active')) {
contactTextarea.val(contactTextarea.val().replace(prefill + '\n', ""));
} else ...