Имам структура като всяко изображение има вход по-долу. Имам x изображения на екрана. Всяко изображение има опция за кликване
onclick="imageClicked(this)"
Функцията създава рамка към изображението и показва свит вход. Рамката на изображението се показва, но въведеното не се вижда.
Ето я функцията
function imageClicked(image) {
var input = $(image).closest("input");
$(image).css('outline', "solid 2px #5bc0de");
$(input).css("visibility", "visible");
$(input).focus();
$(input).focusout(function () {
$(image).css('outline', "0");
if ($(input).val() === "0") {
$(input).css("visibility", "collapse");
}
});
$(image).focusout(function () {
if ($(input).val() === "") {
$(image).css('outline', "0");
}
});
}
Ето HTML структура в изглед Razor
@for (int i = 0; i < Model.Boxes.Count; i++){
var base64 = Convert.ToBase64String(Model.Boxes[i].Photo);
var imgSrc = String.Format("data:image/gif;base64,{0}", base64);
var imageId = Model.Boxes[i].BoxId;
@Html.HiddenFor(m => m.Boxes[i].BoxId)
<div class="col-md-2">
<img src="@imgSrc" width="50%" alt="@Model.Boxes[i].Name" id="@string.Format("image{0}", imageId)" onclick="imageClicked(this)" />
@Html.TextBoxFor(m => m.Boxes[i].Quantity, new { @class = "form-control", @style = "visibility: collapse; width: 50%; margin-top: 1%", @id = string.Format("input{0}", imageId) })
</div>
}
$(image).closest("input");
ноclosest()
търси предшественик и тъй катоinput
е празен елемент, той не може да има потомък... - person A. Wolff   schedule 02.06.2016