У меня есть файл menu.js
в решении, а masterpage.aspx
:
Один из кодовых блоков главной страницы следующим образом
<body>
<table id="table2" blah blah>
<tr>
<td valign="top">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><img id="img" blah blah />
<td>
</tr>
</table>
</td>
</tr>
<tr>
<td style="height: 14px">
<%SelectJSMenu%>
</td>
</tr>
</table>
</body>
В коде за masterpage.aspx.vb
Public Sub SelectJSMenu()
{
Select Case System.Configration.ConfigurationManager.AppSettinges("stage")
Case 1
Response.Output.Write("script") 'loading menu.js file via script
Case 2
Response.Output.Write("scirpt") 'loading another menu2.js file via this script
}
Мне нужно проверить права пользователя и написать это меню, если пользователь не тот, кого он утверждает, а затем загрузить второй.
Я не эксперт в js
и asp
но просматриваю сообщение, я думаю, проблема в том, что вы не закрываете тэг <td>
во второй закрытой таблице:
_edit: в html есть исключение, исключающее пропущение тега, и тег <td> является их частью. Но сложный синтаксический анализатор может иметь более строгий этап проверки, который мог бы жаловаться на него.
попробуйте заменить:
<tr>
<td><img id="img" blah blah />
<td>
</tr>
от:
<tr>
<td>
<img id="img" blah blah />
</td>
</tr>
Помимо проблемы с закрытием тега, как указано в ответе @jp, необходимо исправить следующее.
Вместо
Case 1
Response.Output.Write("script") 'loading menu.js file via script
Case 2
Response.Output.Write("scirpt") 'loading another menu2.js file
do-
Case 1
Response.Output.Write("<script src=\"menu.js\"></script>") //loading menu.js file via script
Case 2
Response.Output.Write("<script src=\"menu2.js\"></script>") //loading another menu2.js file via this script
<td>
в первой таблице. Прошло много времени с тех пор, как я сделалhtml
, но это кажется мне проблемой.