Я пытаюсь внедрить систему голосования для проекта, над которым я работаю.
Я использовал этот скрипт в своем Quiz.cshtml. Часть AJAX - это адаптация фрагмента кода, который я нашел на SO-стороне. Я не уверен, откуда выбрать ответ. Или как это было реализовано в контроллере?
У меня есть следующие проблемы:
Сохраните действие при голосовании. Не уверен, как это должно выглядеть в контроллере. Или, в основном, заставить работать код AJAX.
Как я могу связать шрифт удивительный вместо изображения? Приведенный ниже код со шрифтом awesome работает отлично, отдельно.
@*<div class="votecell post-layout--left">
<div class="votes">
<i class='fas fa-caret-up' style='font-size:48px;color:darkgrey'></i>
<br/>
<i class='fas fa-caret-down' style='font-size:48px;color:darkgrey'></i>
</div>
</div>*@
Примечания: я использую кодирование проекта MVC ASP.NET в C #.
Cshtml файл с кодом AJAX ниже:
<ul class="quizs">
@foreach (var quiz in Model)
{
<li>
<div class="details">
<div class="rating-star">
@for (int i = 0; i < 5; i++)
{
<i class="fas fa-star"></i>
}
</div>
</div>
<div id=@quiz.Id class="answer">
<img src="Vote_up.png">
<div class="score">0</div>
<img src="Vote_down.png">>
</div>
</li>
}
</ul>
@section scripts
{
<script>
$(function() {
$('div.answer img.vote').click(function() {
var id = $(this).parents('div.answer').attr('id').split('_')[1];
var vote_type = $(this).hasClass('up') ? 'up' : 'down';
if($(this).hasClass('selected')) {
$.post('/vote/', {id: id, type: vote_type}, function(json) {
if(json.success == 'success') {
$('#answer_' + id)
.find('img.' + vote_type);
.attr('src', 'vote_' + vote_type + '_selected.png')
.addClass('selected');
$('div.score', '#answer_' + id).html(json.score);
}
});
} else {
$.post('/remove_vote/', {id: id, type: vote_type}, function(json) {
if(json.success == 'success') {
$('#answer_' + id)
.find('img.' + vote_type);
.attr('src', 'vote_' + vote_type + '.png')
.removeClass('selected');
$('div.score', '#answer_' + id).html(json.score);
}
});
}
});
});
</script>
}
На данный момент я получаю следующий результат, где он не показывает изображение вверх / вниз
