HTML-код в JavaScript не работает с использованием document.write - PullRequest
0 голосов
/ 31 августа 2018

Я пробовал этот код только в html, и он работает, но при использовании document.write он вообще не выполняется. notepad ++ затеняет этот код до тега img (включая img). Я новичок и не могу определить ошибку в нем.

Код:

<script type="text/javascript" language="javascript">
document.write("
<table valign="middle" width="100%" height="100%" border="0" cellpadding="15%" >
    <tr align="center" valign="middle" height="50%" >
        <td><img src="images/logo.png" ></td>
    </tr>
    <tr height="10%">
        <td colspan=2>
            <input type="text" id="eno" maxlength="9" size="9" placeholder="Enrollment No." style="border:0;font-size:72;width:100%;height:100%;">
        </td>
    </tr>
    <tr height="10%">
        <td colspan=2>
            <input type="button" value="Enter" onclick="SaveEno()" style="font-size:72;color:white;background-color:black;width:100%;height:100%;border:0;">
        </td>
    </tr>
    <tr>
        <td></td>
    </tr>
</table>
");
</script>

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

Двойные кавычки во фрагменте HTML мешают работе JavaScript. Вы действительно должны использовать шаблонный литерал , если вам не нужна поддержка Internet Explorer. В этом случае вам придется либо использовать одинарные кавычки вокруг фрагмента HTML, либо избегать всех двойных кавычек в нем \".

document.write(`
    <table valign="middle" width="100%" height="100%" border="0" cellpadding="15%" >
        <tr align="center" valign="middle" height="50%" >
            <td><img src="images/logo.png" ></td>
        </tr>
        <tr height="10%">
            <td colspan=2>
                <input type="text" id="eno" maxlength="9" size="9" placeholder="Enrollment No." style="border:0;font-size:72;width:100%;height:100%;">
            </td>
        </tr>
        <tr height="10%">
            <td colspan=2>
                <input type="button" value="Enter" onclick="SaveEno()" style="font-size:72;color:white;background-color:black;width:100%;height:100%;border:0;">
            </td>
        </tr>
        <tr>
            <td></td>
        </tr>
    </table>
    `);
0 голосов
/ 31 августа 2018

В этом случае document.write ("") учитывает форматирование тегов, таких как символы новой строки, двойные кавычки и т. Д. Поскольку это не строка JavaScript, не используйте двойные кавычки. Для того, чтобы это работало, есть все теги внутри функции document.write(``). Для более https://www.w3schools.com/jsref/met_doc_write.asp

...