使用.ajax或.load,我将.html页面中的内容加载到或替换元素。在任何一种情况下,内容都被调用并插入,并且在.html文件中的内容之后附加了一个神秘的新行(不是中断元素,但是像\ n或\ r \ n)。
在chrome的元素检查器中,它看起来像:
<div class="loaded parent">
// all my loaded content
</div>
"
(ghost line)
"
代码中没有中断,所以我不知道它来自何处。
html的:
<div id="ForgotPasswordForm" class="ajax">
<h2>Reset Your Password test</h2>
<div class="BlockContent">
<p> Enter your email below to request a password reset. An email will be send with a reset link. </p>
<p class="ErrorMessage" style="display:none"></p>
<form action="/login.php?action=send_password_email" method="post" onsubmit="return check_forgot_password_form()">
<div>
<dl style="width: 270px;margin: 0 auto;height: 30px;">
<dt style="float: left;width: 100px;text-align: right;margin:5px 5px 0 0;"> <span class="Required">*</span> Email Address: </dt>
<dd style="float:left;font-size:12px;width:150px;">
<input style="padding:4px;" type="text" class="Textbox" name="email" id="email" />
</dd>
</dl>
<p class="Submit" style="text-align:center">
<input type="submit" value="Continue" />
</p>
</div>
</form>
</div>
</div>
脚本:
$('#recover-pass').click(
function(e){
e.preventDefault();
//$('#login-content').load('/content/ResetPassword.html');
$.ajax({
url: '/content/ResetPassword.html',
success: function(data) {
$('#login-content').replaceWith(data);
alert('Load was performed.');
}
});
});
答案 0 :(得分:0)
大多数文本文件格式在EOF中使用最终换行符保存文件。假设您将此html文件视为服务器端包含,这可能会导致您的症状。
答案 1 :(得分:0)
尝试将代码复制/粘贴到其他编辑器(如Windows中的记事本)。许多文本编辑器能够使用不同的OS的换行符,并且我已经看到一些不能删除除了它设置使用的类型之外的类型的换行符。例如,一个文本编辑器将Mac换行符放在文件末尾,我在Windows中打开它,我的文本编辑器根本不显示或指示那些中断。记事本几乎只是忽略了它不知道的一切,所以当你粘贴到那里时,它就会摆脱额外的休息。
除非您看到使用任何文件对所有AJAX请求产生影响,否则这可能是罪魁祸首。