这是我的第一个问题。首先,抱歉我的“不完美”英语...
我正在使用AJAX开发ASP.NET MVC应用程序。
我在视图中有以下代码:
<% using(Html.BeginForm(null, "Home", FormMethod.Post, new{id="formcpf"})){ %>
<p>
<input name="tipo" type="radio" value="GeraCPF" /> CPF
<input type="radio" name="tipo" value="GeraCNPJ" /> CNPJ
</p>
<p>
<input type="submit" id="sbmt" value="Gerar" /> <br /><br />
<span id="lblCPF" class="respostaBG"></span>
</p>
以及以下用于调用Ajax请求的Javascript:
$(document).ready(function() {
$("form#formcpf").submit(function(event) {
$(this).attr("action", $("input[@name='tipo']:checked").val());
event.preventDefault();
hijack(this, update_sessions, "html");
});
});
function hijack(form, callback, format) {
$.ajax({
url: form.action,
type: form.method,
dataType: format,
data: $(form).serialize(),
success: callback
});
}
function update_sessions(result) {
$("#lblCPF").html(result);
}
在Firefox和Chrome中工作正常,但在IE7中有时会将值返回到标签中,有时则不然。我必须继续提交以获得回报。
任何人都可以提供帮助吗?
答案 0 :(得分:0)
您是否禁用了缓存?
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]
此属性放在控制器类中,禁用缓存。由于我的应用程序中不需要缓存,因此将其放在BaseController类中:
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]
public abstract class BaseController : Controller
{
以下是有关OutputCacheAttribute的详细说明:Improving Performance with Output Caching
检查禁用是否排除了问题。