首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取.closest() div id

获取.closest() div id
EN

Stack Overflow用户
提问于 2013-12-02 11:17:10
回答 1查看 697关注 0票数 0

我正在尝试实现this answer中给出的代码。我想进一步简化它,使用closest()找到最近的divid,并使用它作为位置,但它不工作-我只是在我的文本框中得到“未定义的”。

下面是剧本:

代码语言:javascript
复制
function updateDetails(date) {
    var loc = $(this).closest("div").attr("id");

    $('#buy-form').animatescroll({scrollSpeed:700,easing:'easeInOutSine'});    

    document.getElementById('date').value= date; 
    document.getElementById('venue').value= loc;   

    $('#resicheck').attr('disabled', true);
}

下面是(简化的)标记:

代码语言:javascript
复制
<div id="Philadelphia">
    <a href="javascript:updateDetails('20-24 January');">20-24 January</a>
</div>

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2013-12-02 11:20:19

中的应用

你必须通过this

代码语言:javascript
复制
<div id="Philadelphia">
 <a href="javascript:updateDetails('20-24 January',this);">20-24 January</a>
</div>

IN JS

代码语言:javascript
复制
function updateDetails(date,this) {
               var loc = $(this).closest("div").attr("id");
               $('#buy-form').animatescroll({scrollSpeed:700,easing:'easeInOutSine'});    
               document.getElementById('date').value= date; 
               document.getElementById('venue').value= loc;   
               $('#resicheck').attr('disabled', true);
            }

和jquery,您喜欢以下非常简单的方式--

现在在html

代码语言:javascript
复制
<div id="Philadelphia">
    <a href="#">20-24 January</a>
</div>

In JS

代码语言:javascript
复制
$("#Philadelphia").on("click","a",function(e){
 e.preventDefault();
var date=$(this).text();
   var loc = $(this).closest("div").attr("id");
                   $('#buy-form').animatescroll({scrollSpeed:700,easing:'easeInOutSine'});    
                   $('#date').val(date); 
                   $("#venue").val(loc);   
                   $('#resicheck').attr('disabled', true);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20326977

复制
相关文章

相似问题

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