Я использую упорядоченный список для создания своего твиттер-приложения для просмотра твитов.Каждый раз, когда я вызываю вставку ajax, она помещает на страницу еще одну копию ссылки ajax.Я просто пытаюсь получить следующий набор твитов от контроллера и вставить их так, чтобы они совпали.Я попытался переместить теги, но дополнительные кнопки AJAX продолжают появляться.
Думая, что это была проблема css, я все это удалил.Разве не проблема.Мне придется заново отформатировать мой список, чтобы поместить закрывающие и открывающие теги до и после блока кода.
Я просто попытался перевести его в частичное представление и поместил код ajax в макет.
Ajax Action Link
@Ajax.ActionLink("Update Tweets", "Index", "Home",
new AjaxOptions
{
UpdateTargetId = "TweetBox",
InsertionMode = InsertionMode.InsertBefore,
HttpMethod = "Get",
})
Частичное представление
<div id="TweetBox">
<div class="TwitterMessageBox">
<ol>
<li class="TweetLineBody">
@foreach (var item in Model)
{
@Html.Hidden(item.StatusId, item.StatusId)
<div class="TwitProfileImage">
<img src=@Url.Content(item.ImageUrl) alt="@item.ScreenName" />
</div>
<div class="TwitRealName">
@item.User
</div>
<div class="TwitNickName">
@MvcHtmlString.Create(@Html.Namify(@item.ScreenName))
</div>
<div class="TweetText">
@MvcHtmlString.Create(@item.Tweet)</div>
<div class="TweetTime">
@Html.RelativeDate(@item.Created)</div>
<div class="TweetRating">
Rating</div>
}
</li>
</ol>
</div>
</div>
Контроллер - это просто базовый перечисляемый список в Home / Index
ЭтоПоведение
Допустим, у вас есть вызов ajax, который получает данные от действия контроллера.Он вставляет ранее в целевой адрес, который является идентификатором div.
Первоначальный вид идеален
ОБНОВЛЕНИЕ AJAX HTML ССЫЛКА // Вы щелкаете по нему, чтобы контроллер вызывал ajax и получал данные
Чирикать 1
Чирикать 2
и т. Д. = Идеально и выровнено
Вы нажимаете ссылку действия Ajax на своей веб-странице, она выходит и получает данные, нодобавляет секунду вроде этого
AJAX ОБНОВЛЕНИЕ HTML LINK
AJAX ОБНОВЛЕНИЕ HTML LINK
Tweet 1
Tweet 2 // выравнивание по-прежнему идеально, но выиметь 2-ые ссылки ajax
Теперь нажмите на ссылку ajax 3-й раз // выравнивание все еще идеально, но у вас есть 2-ая ссылка ajax вверху и одна зажата
ОБНОВЛЕНИЕ AJAX HTML LINK
ОБНОВЛЕНИЕ AJAX HTML-ССЫЛКА
Чирикать 1
Чирикать 2
// выравнивание все еще идеально, но у вас есть 2-ая ссылка ajax вверху и одна зажатая
Плюс результаты Tweets
ОБНОВЛЕНИЕ AJAX HTML LINK
Tweet 1
Tweet 2 // выравнивание по-прежнему идеальное, но у вас есть 2-ая ссылка ajax вверху и 3-й список вставлен между двумя / 3
Код контроллера для запроса:
public class HomeController : Controller
{
//
// GET: /Home/
private TwitterContext twitterCtx;
public ActionResult Index()
{
twitterCtx = new TwitterContext();
List<TweetViewModel> friendTweets = (from tweet in twitterCtx.Status
where tweet.Type == StatusType.Public
select new TweetViewModel
{
ImageUrl = tweet.User.ProfileImageUrl,
UserId = tweet.UserID,
User = tweet.User.Name,
ScreenName = tweet.User.Identifier.ScreenName,
StatusId = tweet.StatusID,
Tweet = HomeController.AddWebAndTwitterLinks(tweet.Text),
Created = tweet.CreatedAt
})
.ToList();
return View(friendTweets);
}
My Desired Behavior - 1 ajax-ссылка для вызова контроллера и вставки данных