Это то, что я пробовал, я думаю, что вопрос является самоочевидным.Заменить флажок с изображением asp.net
Использование CSS: (Это не работает, я сделал jsfiddle)
.star + label{
background:url('image1.png') no-repeat;
height: 16px;
width: 16px;
display:inline-block;
padding: 0 0 0 0px;
}
.star:checked + label{
background:url('image2.png') no-repeat;
height: 16px;
width: 16px;
display:inline-block;
padding: 0 0 0 0px;
}
Использование JQuery (Это работало частично)
$('.star').replaceWith("<img src='image1.png' />");
$('.star').click(function() {
var $checkbox = $(this).prev(".star");
$checkbox.prop('checked', !$checkbox.prop('checked'));
if ($checkbox.prop("checked")) {
$image.attr("src", "image2.png");
} else {
$image.attr("src", "image1.png");
}
})
JSFIDDLE: fiddle
И это мой код на странице aspx:
<span>
<asp:CheckBox ID="star1" CssClass="star" runat="server" />
<asp:CheckBox ID="star2" CssClass="star" runat="server" />
<asp:CheckBox ID="star3" CssClass="star" runat="server" />
<asp:CheckBox ID="star4" CssClass="star" runat="server" />
<asp:CheckBox ID="star5" CssClass="star" runat="server" />
</span>
Что я могу делать неправильно? Я искал несколько решений (здесь много вопросов), но они не обрабатывают случай, когда он является asp.NET.
Здравствуйте, Joze, почему метод jQuery работал частично? Что не хватает? –
@ KauêGimenes Небеленное изображение показывает, но при щелчке ничего не происходит. Однако jQuery делает * не * работу над проектом .net. В скрипке я тестировал внесение входов, не совсем то же самое, что и флажки asp :. .... – Joze
Общая догадка (поскольку я новичок в jQuery), но если вы заменяете элемент HTML, в котором есть 'class = «star» с изображением ... тогда следующий фрагмент кода не найдет никаких элементов с 'class =" star "' для привязки? Попробуйте положить 'class =" star "' как часть '' кода, который вы используете для замены – freefaller