首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取具有相同类名的当前输入值。

获取具有相同类名的当前输入值。
EN

Stack Overflow用户
提问于 2015-03-29 21:59:54
回答 4查看 3.7K关注 0票数 3

我试图通知输入框中的当前值,这取决于您单击哪个按钮。因此,如果选择了第一个网格-2按钮,它将警告1,如果要单击输入值为2的第二个按钮,则将警告该编号等。

代码语言:javascript
复制
<div class='grid-2'>
    <input class="photo1" value="1">
    <a class='remove-photo' href='#'>Remove Now</a>
</div>

<div class='grid-2'>
    <input class="photo1" value="2">
    <a class='remove-photo' href='#'>Remove Now</a>
</div>


<div class='grid-2'>
    <input class="photo1" value="3">
    <a class='remove-photo' href='#'>Remove Now</a>
</div>


<div class='grid-2'>
    <input class="photo1" value="4">
    <a class='remove-photo' href='#'>Remove Now</a>
</div>


<script type="text/javascript">
$(document).ready(function() {
    $(".remove-photo").click(function() {
        var current_selected_photo_num = $(".photo1").val();
        alert(current_selected_photo_num);
    });
}); 
</script>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-03-29 22:05:51

您可以定位周围的div并在其中找到input

代码语言:javascript
复制
$(".remove-photo").click(function() {
    var num = $(this).closest('div').find(".photo1").val();
    alert(num);
});
票数 0
EN

Stack Overflow用户

发布于 2015-03-29 22:03:00

使用.prev()函数向上遍历兄弟姐妹

代码语言:javascript
复制
$(".remove-photo").click(function() { 
    var current_selected_photo_num = 
    $(this).prev('.photo1').val(); 
    alert(current_selected_photo_num); 
})
票数 3
EN

Stack Overflow用户

发布于 2015-03-29 22:18:33

到目前为止,我不喜欢任何列出的答案,它们都与html紧密相连,这使得您的javascript很脆弱。一个简单的HTML更改可能会阻止大多数其他答案像预期的那样工作。

相反,我建议更改您的HTML:

代码语言:javascript
复制
<input class="photo1" value="1" id="photo-1-1">
<a class='remove-photo js-remove-photo' href='#' data-alert-target="#photo-1-1">Remove Now</a>

<input class="photo1" value="1" id="photo-1-2">
<a class='remove-photo js-remove-photo' href='#' data-alert-target="#photo-1-2">Remove Now</a>

<input class="photo1" value="1" id="photo-1-3">
<a class='remove-photo js-remove-photo' href='#' data-alert-target="#photo-1-3">Remove Now</a>

<input class="photo1" value="1" id="photo-1-4">
<a class='remove-photo js-remove-photo' href='#' data-alert-target="#photo-1-4">Remove Now</a>

Javascript

代码语言:javascript
复制
$(".js-remove-photo").click(function() {
  var target = $(this).data('alert-target');
  var value = $(target).val();
  alert(value);
});

我还建议阅读脱钩你的HTML,CSS和JavaScript -菲利普沃尔顿(工程师在谷歌)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29335403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档