这是一种奇怪的问题,但我真的对网络开发非常陌生,对我来说(作为桌面开发人员)我感觉很奇怪。动态更新视图,使用ajax和更多模型加载模型
我创建了一个虚拟项目来测试的东西:
我想说明(<li>
项目)列表,并要添加使用Ajax更多音符。
我会告诉我的jQuery(抱歉西班牙文/英文混合,只是灰尘的代码,我扔想也没想就名):
<script type="text/javascript">
$(function() {
AddNotes();
$("#NuevaNotaForm").submit(function (event) {
event.preventDefault();
var form = $(this);
$.ajax({
url: form.attr("action"),
data: form.serialize(),
success: function (data) {
AddNotes();
}
});
});
});
function UpdateNotes(notes) {
$(".Nota").each(function (index, element) {
var fecha = $(element).find(".Nota-fecha");
var nota = $(element).find(".Nota-Derecha");
fecha.height(nota.height());
fecha.css('background-color', ($(notes).get(index)).Fondo);
nota.css('background-color', ($(notes).get(index)).Fondo);
fecha.css('color', $(notes).get(index).Texto);
nota.css('color', ($(notes).get(index)).Texto);
});
}
function GetNotes() {
$.ajax({
url: '@Url.Action("GetNotes")',
dataType: 'json',
data: '{}',
success: function (data) {
UpdateNotes(data);
}
});
}
function AddNotes() {
$.ajax({
url: '@Url.Action("RenderNotes")',
success: function (data) {
$("#cajaNotas").empty().append(data);
GetNotes();
}
});
}
所以,我有一个partialview(# cajaNotas)我在那里渲染的笔记清单如下:
我开始对渲染partialview的“RenderNotes”进行查询,所以我清理div并放置partialview(我这样做是因为当我需要一个新笔记时,我必须“刷新”div,并首次显示注释)。
当我渲染笔记时,我制作了另一个ajax来获取Json(笔记列表),并使用该列表更新一些CSS)。
我觉得很奇怪,因为所有这些ajax调用都让我的网络变慢了。这些笔记花费了半秒的时间来显示,当我添加一个新笔记(使用表格(#nuevaNotaForm“)时,它会更加猛烈(因为刷新)。
所以问题是:Web开发是否很奇怪?我认为这是一个奇怪的做3阿贾克斯呼吁这个小例子
当我看着萤火虫,它等到页面加载(我必须等待追加partialview,对吧?)和然后打电话来获得部分视图,当它完成后,它等待获取笔记,总之,像1秒的电话。
无论如何,有人可以给我一些光?(代码是不干净,但我需要去知道我在做什么)
第一次运行时忽略1个ajax调用的一点改进,但仍然有点瑕疵:P –