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并显示一些不正确的语法错误
答案 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 + '"/>';