Javascript始终仅使用if语句

时间:2019-08-22 00:04:32

标签: javascript

我花了几个小时试图了解发生了什么,但没有成功。 我使用php值定义javascript变量。

因此,var sname是以下内容:

var sname = 'Mónica'; //with an accented character
var sname = 'Edgar';

当我查看页面源代码时,一切都是正确的,但警报始终显示第一个名字-Mónica。当我放第一本Edgar时,警报显示这两种情况都显示Edgar。如果我将重音名称Mónica替换为其他没有重音的名称,则一切正常。没有控制台错误,什么都没有。这是否意味着我不能在javascript变量中使用带重音符号的字符?

var estilo总是正确的。

var fromname = 'edgar';
var username = 'monica';
var msg = 'eúíéñú';

if(fromname === username) {
    var estilo = 'me';
    var sname = '<?php echo $sender;?>';
} else {
    var estilo = 'you';
    var sname = '<?php echo $receiver;?>';
}

var htmlx='div class="bubble '+estilo+'"><p>'+sname+'</p><div">'+msg+'</div><p">'+hour+':'+minute+'</p></div>';


alert(htmlx);

警报针对每种情况显示不同的estilo,但始终是相同的sname

1 个答案:

答案 0 :(得分:0)

这解决了问题:

if(fromname === username) {    
    sname = '<?php echo $sender;?>';
} else {
    sname = '<?php echo $receiver;?>';
}

var htmlx='div class="bubble '+estilo+'"><p>'+sname+'</p><div">'+msg+'</div><p">'+hour+':'+minute+'</p></div>';

delete sname;