0

我有一些代码,例如:

<input type="text" class="searchpersontxtbox" />
<input type="button" value="Find" class="findpersonbtn btn" disabled="disabled" />

有一个按钮点击事件:

$(document).ready(function () {

        $('.findpersonbtn').click(function () {

            var findpersonbutton = $(this);

            var searchbox = $(this).closest('.searchpersontxtbox');
            alert(show the searchbox text here);

        });
    });

因此,当单击按钮时,我试图在搜索框中获取文本并将其提醒到屏幕上。

需要注意的一点是,页面上可能有多个带有“searchpersontxtbox”类的搜索框。

所以我想从按钮正上方的文本框中获取文本。

有人能帮我一下吗?

4

4 回答 4

3

我认为他在寻找一些相对的东西......像这样......

$(document).ready(function(){ 

$('.findpersonbtn ').click(function () {
     var findpersonbutton = $(this);

//do relative search here...
     var searchbox = findpersonbutton.parent().find('.searchpersontxtbox');
     alert(searchbox.val());

});

});

于 2012-11-21T02:15:35.233 回答
2

这不是closest工作方式。在没有看到其余标记的情况下,一种方法是:

$(document).ready(function () {
    $('.findpersonbtn').click(function () {
        var findpersonbutton = $(this)
            , searchbox = $(this).prev();

        alert(searchbox.val());
    });
});

您可以使用prev来获取 clicked 正上方的元素.findpersonbtn

于 2012-11-21T01:56:00.733 回答
0
$(function(){
    $('button').click(function() {
    var text = $('textarea').val();
    alert(button);
    }
});

类似的东西?使用 jQuery 搜索获取 textarea 值,然后在变量中应用该方法并提醒它的文本。应该管用?

于 2012-11-21T01:55:19.683 回答
0

您可能想要检查.previousSibling(),它应该返回以前的输入。

http://jsfiddle.net/TbYup/

于 2012-11-21T01:56:38.217 回答