下面的代码工作得很好,可以替换div中的某些变量。用粗制的食物代替食物等。
<script>
$(document).ready(function(){
$('div').html( $('div').html().replace(/food/g, '<strong>food is ready</strong>') );
$('div').html( $('div').html().replace(/meat/g, '<strong>good meat</strong>') );
$('div').html( $('div').html().replace(/milk/g, '<strong>best milk</strong>') );
});
</script>
<div> hello do you have food, what about meat. I will also need milk. and please make them bold.</div>
下面是我的问题:我希望使用表单变量输入的数据实现上述相同的功能。例如:我想,如果键入某些单词,其中包含食物,牛奶等,让他们在句子中用粗体替换,就像我键入的那样。我已经尝试了下面的代码,但无法让它工作。
<script>
$(document).ready(function(){
$('.message').keyup(function(){
var message = $('.message').val();
$('.result').html( $('.message').html().replace(/food/g, '<strong>food is ready</strong>') );
$('.result').html( $('.message').html().replace(/meat/g, '<strong>good meat</strong>') );
$('.result').html( $('.message').html().replace(/milk/g, '<strong>best milk</strong>') );
});
});
</script>
<input type='text' id='message' class='message'>
//Display all the typed sentence and replace their matched word with their bolded equivalents
<div class="result"></div>
</script>
发布于 2020-10-29 06:46:12
我没有测试下面的代码,但它应该可以正常工作。
<script>
$(document).ready(function(){
$('.message').keyup(function(){
var message = $('.message').val();
var output = message.replace(/food/g, '<strong>food is ready</strong>').replace(/meat/g, '<strong>good meat</strong>').replace(/milk/g, '<strong>best milk</strong>'); //chained replace()
$('.result').html( output );
});
});
</script>
<input type='text' id='message' class='message'>
//Display all the typed sentence and replace their matched word with their bolded equivalents
<div class="result"></div>
</script>
这两个问题是:
在设置输出值时使用无链式替换函数的message
$('.message').html()
而不是$('.message').html()
重写旧规则
https://stackoverflow.com/questions/64593299
复制相似问题