假設所有形式的應用程序具有這樣的結構:AJAX(jQuery的)響應
<div id="result_messages"></div>
<form action="/action">
<!-- all the form -->
</form>
用於這種形式提交按鈕看起來是這樣的:
<input type="button" onclick="$.post('/action', $(form).serialize(), function (data) {
$('#result_messages').html(data); // At this point the 'data' is an standard HTML with a message
});" />
可是,卻並不總是響應消息......當數據信息或不如何檢測??????:
<input type="button" onclick="$.post('/action', $(form).serialize(), function (data) {
if (isMessage(data))
$('#result_messages').html(data);
else
doActionWith(data);
});" />
使用JSON可能的解決方案:
{ response_type : 'message', data: 'all_data_here' }
{ response_type : 'nomessage', data: 'all_data_here' }
其他的解決辦法是把一個特殊的字符串在開始的數據:
<!--message--><ul><li>form was processed</li></ul>
你有沒有其他的想法?你對這個解決方案有什麼看法?
你是什麼意思«不總是消息»?那是什麼,其他時間呢? – 2010-10-31 09:31:08