如何在字符串输入的Html Elements中的双引号内写单引号

时间:2015-03-17 14:08:10

标签: javascript html string quotes

string mystring == "<input class=\"success\" type=\"button\" id=\"Delegate_New_btn\" value=\"New\" onclick=\"location.href="+mylocation+"'/>";

我有一个像上面这样的字符串。

问题是当我将它内部HTML转换为如下所示的div时,它会显示错误的语法错误:

document.getElementById("id").innerHTML=mystring;

我需要的是:

<input type="button" value"somevalue" onclick="location.href='mylocationurl'"/>

我不知道如何在双引号中包含这个单引号。我曾尝试过反斜杠方法,但我也没有实现。

注意:我在服务器端C#中定义了这个并将其传递给客户端 请帮我解决这个问题。

更多信息

VM.Custombuttons_tag = "<td><input class=\"btn btn-mini btn-success\" type=\"button\" id=\"Delegate_New_btn\" value=\"New\" onclick='location.href=\'" + string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~")) + "/ABC/Delegate/AssignListUserLevel?PeriodId=0'/></td>";

这是我的完整代码,这里的VM是一个方法,而Custombuttons_tag是字符串,所以当我运行我的代码时,它将innerHTML代码转换为div并显示一些不正确的语法错误

4 个答案:

答案 0 :(得分:2)

您没有使用string定义字符串,而是使用var定义所有内容

var myString = "I am a string";
var myNumber = 1000;

Java和JavaScript确实存在差异!

答案 1 :(得分:0)

您可能想尝试这样的事情......

var input=document.createElement('input');
input.setAttribute('class','success');
input.setAttribute('type','button');
input.setAttribute('id','Delegate_New_btn');
input.setAttribute('value','New');
input.setAttribute('onclick','location.href="'+mylocation+'"');

document.getElementById('id').appendChild(input);

答案 2 :(得分:0)

这里有一些问题,第一个是在分配变量时不使用==,第二个是你需要使用var而不是string

因此,您的代码应如下所示:     var mystring = "<input class='success' type='button' id='Delegate_New_btn' value='New' onclick='location.href=\'+mylocation+\''/>";

您需要使用\'的唯一时间是,如果您的单引号包含在单引号中,就像您使用location.href部分一样。

答案 3 :(得分:0)

只要它们正确嵌套,您就可以混合使用单引号和双引号。

var mystring = '<input class="success" type="button" id="Delegate_New_btn" value="New" onclick="location.href=' + mylocation + '"/>';