0

这真的很困扰我,我不知道如何解决这个问题。我创建问题的代码是这样的:

$("#add-warmup").click(function(){
    $("#warmup").empty().prepend('<td><input type="text" name="distance-warm" maxlength="7" size="4"> miles</td><td><input type="text" name="duration-warm" maxlength="8" size="8" placeholder="HH:MM:SS" /></td><td>Warmup<input type="hidden" name="type-warm" value="Warmup" /></td><td><select name="shoe-warm"><option value=""><?= str_repeat('&nbsp;', 12); ?></option>></select></td>');
>});

我只想单击一个链接并将当前行替换为输入的实际值,但我不断收到Unexpected token <报价第一部分的错误。事情就像.prepend('<p> test</p>');工作一样简单,但这并不。t

4

4 回答 4

1

尝试更换这个

<?= str_repeat('&nbsp;', 12); ?>

<?= str_repeat("&nbsp;", 12); ?>
于 2013-04-03T17:22:56.103 回答
0

如果你包装你要预先准备的东西,它会起作用吗?

$("#add-warmup").click(function(){

$("#warmup").empty().prepend($('<td><input type="text" name="distance-warm" maxlength="7" size="4"> miles</td> <td><input type="text" name="duration-warm" maxlength="8" size="8" placeholder="HH:MM:SS" /></td> <td>Warmup<input type="hidden" name="type-warm" value="Warmup" /></td>
<td><select name="shoe-warm"><option value=""><?= str_repeat('&nbsp;', 12); ?></option> </select></td>'));

});

编辑:从你的截图:http ://gyazo.com/1f01eabd8e3acacc3eb534f5a88fc6cf.png?1365010212

啊哈!罪魁祸首现身!您的文本在开头后的行开始 ' 请参见此处:在 JavaScript 中创建多行字符串

于 2013-04-03T17:25:48.813 回答
0

发布的代码有一些问题。您在使用单引号'的字符串内使用未转义的单引号 ( )。<?= str_repeat('&nbsp;', 12); ?>应该是<?= str_repeat(\'&nbsp;\', 12); ?><?= str_repeat("&nbsp;", 12); ?>

另请注意,您在 jQuery 中使用 PHP。(除非 JS 是由 PHP 生成的。)

但是你的错误是因为你在函数结束时Unexpected token >有一个额外的事实。>

于 2013-04-03T17:26:01.990 回答
0

和:

.prepend('<p>test</p>'); 

尝试

.prepend('\<p\>test\<\/p\>');

还尝试将您要添加的 HTML 保留在一行中。

我还注意到,当我发布此代码时,您的代码中充满了回车。也删除这些

于 2013-04-03T17:29:58.723 回答