現在、対話型AIを作っているのですが、そのユーザーがコメント(呟いた)時に、「最新」と表示し、前のコメント(呟き)の「最新」をクリアしたいのですがうまくいきません。
ソースコード
html
1<head> 2<style type='text/css'> 3.box1 { 4 /* divのcss */ 5} 6.font1 { 7 margin: 0; 8 padding: 0; 9 font-family: Consolas; 10 color: #aaa; 11 margin: 2em 0; 12} 13</style> 14<script> 15function display(String){ 16 var mozi=document.getElementById('obj1').innerHTML; 17 mozi="<div class='box1'>new<font class='font1' size='2px'>"+String+"</font></div>"+document.getElementById('obj1').innerHTML; 18 mozi=mozi.replace("font color='red'<>最新</font>",""); /* 「最新」をクリアし、最新のコメントに「new」 のフラグを立てる*/ 19 mozi="<div class='box1'>new<font class='font1' size='2px'>"+String+"</font></div>"+document.getElementById('obj1').innerHTML; 20 mozi=mozi.replace("new", "<font color='red'>最新</font>");/* 先ほど立てたnewを「最新」に置き換える */ 21 document.getElementById('obj1').innerHTML=mozi; 22 /* ここからAIがユーザーの呟きを受け取る */ 23}; 24</script> 25</head> 26<body> 27<button type='button' OnClick="display(f1.t1.value);">話す</button> 28<form name='f1'><textarea name='t1'>test</textarea></form> 29<div id='obj1'></div> 30</body>
うまくいかないこと
html
1<script> 2mozi=mozi.replace("font color='red'<>最新</font>",""); 3</script>
としたのにも関わらず、なぜか「最新」がクリアされず、すべてのコメントが「最新」となってしまいます。
タグに「JavaScript」を追加しておいてください。
回答1件
あなたの回答
tips
プレビュー