如何修复这个java脚本错误处理单引号在行



你好,我有一个类似的需求,如下所示想知道如何解决这个问题。

下面是代码
<script type="text/javascript">
function Msg1(){
  var sd= document.getElementById('myText').innerHTML = 'Thank's!';
  alert('-sd-'+sd);
}
function Msg2(){
  document.getElementById('myText').innerHTML = 'Try messages 1 again...';
}
</script>
<input type="button" onclick="Msg1()" value="Show Message 1" />
<input type="button"  onclick="Msg2()" value="Show Message 2" />
<p id="myText"></p> 

innerHTML标签抛出脚本错误,如

Webpage error details

Message: Expected ';'
Line: 29
Char: 64
Code: 0
URI: file:///C:/Documents%20and%20Settings/j1007962/Desktop/spl.html

我正在寻找围绕innerHTML的修复或更好地替换为可以修复的东西这一点。由于

你应该转义。

修改
var sd= document.getElementById('myText').innerHTML = 'Thank's!';

var sd= document.getElementById('myText').innerHTML = 'Thank's!';
或者使用双引号
var sd= document.getElementById('myText').innerHTML = "Thank's!";

尝试转义单引号

var sd= document.getElementById('myText').innerHTML = 'Thank's!';

编辑

假设我们有一些来自服务器端或HTML标签的文本。在这种情况下,我们有一个有效的变量。所以没有必要改变这个变量。

<div id="div1">
    Thank's!
</div>
<script language="javascript" type="text/javascript">
function changeDivHTML()
{
    var innerText = document.getElementById('div1').innerHTML;
    alert( innerText );
}

或者如果文本是通过Ajax来自服务器

$.ajax({
    url: "test.html",
    success: function(data){
        alert( data.someStringValue );
    }
});

最新更新