我需要设置添加到 textarea 中的用户的总费用。
我有这段代码:
$("#student_teacher_profile_for_teaching_amount").keyup(function(e) {
var new_str, price, regex, str;
regex = /[0-9]+\.[0-9]{1,2}|[0-9]/;
str = $(this).val();
console.log(str);
price = str.match(regex);
if(price) {
if( $("#to_teach_ammount").length > 0 ) {
$("#to_teach_ammount").html(price[0]);
} else {
new_str = str.replace(regex, "<span id='to_teach_ammount'>" + price[0] + "</span>");
$(this).val(new_str);
}
$("#to_teach_total").val(price[0]); #this is and hiddent input filed
}
});
因此我得到了:
some text before numbers <span id='to_teach_ammount'>2</span>
在我的文本区域。
如何将其转换为原始HTML?
答案 0 :(得分:1)
对于只接受纯文本的公共<textarea>
元素,这是不可能的。您将不得不使用(富文本)-plugin,例如使用jQuery。看看这里:http://www.strangeplanet.fr/work/jquery-highlighttextarea/
答案 1 :(得分:0)
to_teach_total不应该是textarea。相反,它应该是一个期望html的元素
然后使用$(this).html(new_str)来设置html
这个html()方法也可以传递一个函数,该函数可以将旧的html作为参数并返回一个新的字符串以设置为新的html