6

您好我正在尝试在 jquery 中创建一个变量,其中包含一个用于在网站的不同区域输出的表。但这给了我一个错误,我不明白为什么。这是我的 JQUERY:

var copy = "<table width='750' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td>Tarifa valida desde:</td>
    <td>Tarifa valida hasta:</td>
    <td>Tarifa MXN</td>
    <td>Tarifa USD</td>
  </tr>
  <tr>
    <td><input type='text' name='from1' id='from1' class='date' /></td>
    <td><input type='text' name='to1' id='to1' class='date' /></td>
    <td><input type='text' name='mxn1' /></td>
    <td><input type='text' name='usd1' /></td>
  </tr>
  <tr>
    <td>Extra Pax MXN:</td>
    <td>Extra Pax USD:</td>
  </tr>
  <tr>
    <td><input type='text' name='exmxn1' /></td>
    <td><input type='text' name='exusd1' /></td>
  </tr>
</table>";
    });

我怎么能把它放在一个变量中,这样我就可以在各种 div 中输出:

$(".divExample").html(copy);

预先感谢您的帮助!

4

5 回答 5

4

由于错误分配的字符串导致的语法错误。

连接线

var copy = "<table width='750' border='0' cellspacing='0' cellpadding='0'>" 
            + "<tr>";
  ....
于 2012-09-08T17:39:05.570 回答
4

您可以像建议的那样连接字符串。或者另一种方法是用反斜杠转义换行符:

var html = "<table> \
    <tr>....</tr> \
    </table>";
于 2012-09-08T17:42:13.480 回答
3

您还没有处理字符串中的换行符。因此,javascript 假定每行的结尾是语句的结尾。显然,每一行都不是有效的陈述。像这样连接你的字符串:

var "multi-"+
    "line "+
    "string";
于 2012-09-08T17:38:56.060 回答
2

当我有复杂的 html 时,这就是我所做的。我把 html 放在一个附件中DIV并获取 html 内容

var copy = $('#mycomplexhtml').html(); //gets the content I placed in an hidden div


<!-- I normally place this at the bottom-most part of the page -->
<div id="mycomplexhtml" style="display:none">
  <table width='750' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td>Tarifa valida desde:</td>
    <td>Tarifa valida hasta:</td>
    <td>Tarifa MXN</td>
    <td>Tarifa USD</td>
  </tr>
 ...
  </table>
</div>
于 2012-09-08T17:47:44.887 回答
0

或者您可以使用此工具http://www.accessify.com/tools-and-wizards/developer-tools/html-javascript-convertor/

它工作正常:)

于 2012-09-08T17:46:29.010 回答