我有一個ajax調用返回HTML中的結果。如果請求是好的,它將返回HTML中的聯繫人列表;否則它應該返回驗證錯誤。兩種情況都會返回HTML。如何區分HTML中的ajax結果
問題是這樣的:如果對服務器的請求成功,我無法判斷結果是驗證錯誤還是聯繫人列表。我需要知道,這樣我就可以相應地操縱我的HTML:
$.ajax({
type: 'POST',
[snip]
success: function(response) {
// here I need to tell if there was a validation error
// or the request succeeded
}
例如,HTML有一個良好的請求可能看起來像......
<tbody>
<tr>
<td>@contact-name</td>
<tr>
</tbody>
雖然錯誤請求看起來像...
<ul>
<li>Please fix some error</li>
</ul>
我在不同的位置顯示結果,因此需要區分可能的結果。
我可以,但我希望避免JSON,因爲在我的特殊情況下,在後端做這件事會很痛苦。 – Mohamad
另一個解決方案是搜索你的HTML響應中的某個關鍵字,如「error」:response.indexOf('error')!== -1 –
這只是一個雖然,但也許你可以發回你的迴應一個自定義的http頭,類似「ajax-request-success:1」或類似的東西。 – Cyclonecode