点击href时如何获得价值

时间:2017-03-03 11:25:12

标签: javascript jquery

我从Spring收到UI这段代码:

<div th:each="answer: ${allSearch}">
    <div class="pic">
        <a href="#" onclick="toSelectedObject()" style="text-decoration: none">
            <input type="hidden" name="photoId" id="photoId" th:value="${answer.photo}" />
            <input type="hidden" name="id" id="id" th:value="${answer.id}" />
            <img th:attr="src=${answer.photo}" width="220" height="280" />
            <div align="center">
                <b>   <span th:text="${answer.name}">Name</span></b>
            </div>
        </a>
    </div>
</div>

我从各种数据库中收集了许多照片(href)。我想恢复照片的价值,因为我将使用“拆分”来理解这张照片是什么数据库。之后我会将window.location.href改为正确的方向。当我使用一个DB时,我的href就像这样

<a th:href="@{~/selectedPage(hiddenModelId=${selected.id})}" style="text-decoration: none">

现在我不能这样做,因为我有一个不同的selectedPage。 我试着这样做:

var photo;
var id;

function toSelectedObject(){
    photo = $("#photoId").val();
    id = $("#id").val();
    alert("ID: "+id + "  photo: "+photo);
}

但我总是看到i​​d和照片只是第一张图片。我不明白,为什么? 我尝试上课:

 <input type="hidden" class="photoId" th:value="${curtain.photo}"/>
 <input type="hidden" class="id" th:value="${curtain.id}"/>

但它是一样的。我认为问题因为我有相同的类或id。因为每个div具有相同的类或ID,但具有不同的信息

1 个答案:

答案 0 :(得分:1)

试试这个:

<div th:each="answer: ${allSearch}">
    <div class="pic">
        <a href="#" style="text-decoration: none">
            <input type="hidden" name="photoId" id="photoId" th:value="${answer.photo}" />
            <input type="hidden" name="id" id="id" th:value="${answer.id}" />
            <img th:attr="src=${answer.photo}" width="220" height="280" />
            <div align="center">
                <b>   <span th:text="${answer.name}">Name</span></b>
            </div>
        </a>
    </div>
</div>

<script>
$('.pic a').on('click', function (e) {
    var photo = $(this).find('input[name=photoId]').val();
    var id = $(this).find('input[name=id]').val();
    alert("ID: "+id + "  photo: "+photo);
})
</script>