我有一个链接可以将一些数据发布到控制器。它工作正常并更新数据。但我想改变父div的CSS,但它没有发生。我尝试了很多变化,但我必须做一些愚蠢的事情。
代码在
之下查看:
@foreach (var item in Model)
{
<div class="added-property-excerpt">
...
<div class="added-property-links">
...
@if (!item.IsPropertyDisabled) {
@Html.ActionLink("Take off the Market" , "Disable", "Property", new { id = item.PropertyId }, new { id ="disable-link" })
}
else {
@Html.ActionLink("Bring on the Market" , "Enable", "Property", new { id = item.PropertyId }, new { id ="enable-link" })
}
</div>
</div>
}
JQuery的
<script>
$(function () {
$('a#disable-link').click(function (e) {
$('.added-property-links').text('loading...');
$.ajax({
url: this.href,
dataType: "text json",
type: "POST",
data: {},
success: function (data, textStatus) { }
});
$(this).closest('.added-property-excerpt').css("background", "red");
// $(this).parent('.added-property-excerpt').css("background", "red");
e.preventDefault();
});
});
</script>
答案 0 :(得分:5)
$(this).parents('.added-property-excerpt').css("background", "red");
带有 s 的 parents
。
它的作用是从父母到父母,直到找到你想要的课程。
答案 1 :(得分:4)
试试这个
$(function () {
$('a#disable-link').click(function (e){
var parentDiv=$(this).closest('.added-property-excerpt');
$('.added-property-links').text('loading...');
parentDiv.css("background", "red");
$.ajax({...});
e.preventDefault();
});
});