我在mvc 3中制作一个自定义助手,我在.cs(类)页面中使用以下行
"<input type=\"submit\" value=\"{0}\" onClick=\"showOk()\";\" /><div class='messagepop pop' style='display: none'><form action='' method='post' id='new_message'><div><img src='../Images/x.png' alt='Exit' class='msgPopImg' onclick='closePop()' /><table bgcolor='#FFF0F0' rules='rows'>" + builder + "</table></div></form></div><script type='text/javascript'>function showOk() {var maskHeight = $(document).height();var maskWidth = $(window).width();$('#mask').css({ 'width': maskWidth, 'height': maskHeight }); $('.pop').show('fast', function () { });$('#mask').show();} function closePop() {$('.pop').hide(); $('#mask').hide();}", buttonText);
由于此部分,我收到'输入字符串格式不正确'错误: -
<script type='text/javascript'>function
showOk() {var maskHeight = $(document).height();var maskWidth = $(window).width();$('#mask').css({ 'width': maskWidth, 'height': maskHeight }); $('.pop').show('fast', function () { });$('#mask').show();} function closePop() {$('.pop').hide(); $('#mask').hide();}
"
修改后的代码为: -
"<input type=\"submit\" value=\"{0}\" onClick=\"showOk()\";\" /><div class='messagepop pop' style='display: none'><form action='' method='post' id='new_message'><div><img src='../Images/x.png' alt='Exit' class='msgPopImg' onclick='closePop()' /><table bgcolor='#FFF0F0' rules='rows'>" + builder + "</table></div></form></div><script type='text/javascript'>function showOk() {var maskHeight = 1000px;var maskWidth =1000px;$('#mask').css({ 'width': maskWidth, 'height': maskHeight }); $('.pop').css('display', 'block');$('#mask').css('display', 'block');} function closePop() {$('.pop').css('display', 'none'); $('#mask').css('display', 'none');}", buttonText);
如何解决此错误请告诉我
答案 0 :(得分:0)
你的onclick有太多的引号,并在你的onclick事件之后注意额外的一个,但仍然在你的标签中,你的分号也超出了引用
输入类型= \“提交\”值= \“{0} \”onClick = \“showOk()\”; \“
尝试 输入类型= \“提交\”值= \“{0} \”onClick = \“showOk(); \”
你也使用string.format,因为你有{0} 我在打电话,如果你是,我看不到它。)
答案 1 :(得分:0)
我的代码中没有显示结束</script>
标记。你有吗?
<强>更新强> 试试这个:
<input type="submit" value="{0}" onclick="showOk();" />
<div class='messagepop pop' style='display: none'>
<form action='' method='post' id='new_message'>
<div>
<img src='../Images/x.png' alt='Exit' class='msgPopImg' onclick='closePop()' />
<table bgcolor='#FFF0F0' rules='rows'>
" + builder + "</table>
</div>
</form>
</div>
<script type='text/javascript'>
function showOk() {
var maskHeight = '1000px';
var maskWidth = '1000px';
$('#mask').css({ 'width': maskWidth, 'height': maskHeight });
$('.pop').css('display', 'block');
$('#mask').css('display', 'block');
}
function closePop() {
$('.pop').css('display', 'none');
$('#mask').css('display', 'none');
});
</script>
答案 2 :(得分:0)
由于javascript部分中的括号“{”,您收到的'输入字符串格式不正确'。它尝试评估表达式,例如它是{0}。
如果要渲染括号,则必须使用“{{”而不是“{”。
P.S。不要忘记结束括号也应该是'}}'而不是'}'。
<强>更新强>
尝试使用此字符串:
string.Format("<input type=\"submit\" value=\"{0}\" onClick=\"showOk()\";\" /><div class='messagepop pop' style='display: none'><form action='' method='post' id='new_message'><div><img src='../Images/x.png' alt='Exit' class='msgPopImg' onclick='closePop()' /><table bgcolor='#FFF0F0' rules='rows'>" + builder + "</table></div></form></div><script type='text/javascript'>function showOk() {{var maskHeight = $(document).height();var maskWidth = $(window).width();$('#mask').css({{ 'width': maskWidth, 'height': maskHeight }}); $('.pop').show('fast', function () {{ }});$('#mask').show();}} function closePop() {{$('.pop').hide(); $('#mask').hide();}}", buttonText);