<a>
動的IDで整理した要素(タグ内の画像)リストがあります。そのうちの1つだけを選択することが可能です。任意の要素を選択するとします。今回は、スタイルを変更し、「SelectedItem」の値をそのname属性に設定して、将来選択されたアイテムを検索します。選択したアイテムの上にマウスを置くと、そのsrc値を変更したいのですが、javascriptでname = "SelectedItem"属性を設定したため、jquery関数は機能しません。実行時に、ページをリロードした後に機能します。コードにname="SelectedItem"を設定すると(デフォルト、実行前)、機能します。しかし、私はページをリロードせずにそれをやりたいです。
すぐに、選択操作を行うときに、name="SelectedItem"を選択した画像に設定します。
function SelectItem(id) {
var imgId = 'productImage_' + id;
var imgId_element = document.getElementById(imgId.toString());
//my some operations
imgId_element.name = "SelectedItem";
}
また、選択解除時に名前の値を取得します。
function UnSelectItem(id) {
var imgId = 'productImage_' + id;
var imgId_element = document.getElementById(imgId.toString());
//my some operations
imgId_element.name = "";
}
選択解除した画像を、選択した画像のみの背景に設定したい。以下Select/Unselect
の項目が動作しない場合。SelectItem()/UnSelectItem()
mouseover()/mouseout()
$("img[name='SelectedItem']").mouseover(function () {
$(this).attr("src", "/Content/images/select.png");
}).mouseout(function () {
$(this).attr("src", "/Content/images/unselect.png");
});
HTMLは次のとおりです。
<img src="@Url.Content("~/Content/images/select.png")" id='productImage_@(Model.Id)' data-id='@Model.Id' @{if (Model.IsSelected) { <text>name="SelectedItem"</text>} } alt="" />
どうすればこの問題を解決できますか?