单击按钮时,如何从文本框上方的文本中获取文本

时间:2012-11-21 01:52:12

标签: javascript jquery html

我有一些代码:

<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 个答案:

答案 0 :(得分:3)

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

$(document).ready(function(){ 

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

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

});

});

答案 1 :(得分:2)

这不是closest的工作方式。如果没有看到其余的标记,一种方法是:

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

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

您可以使用prev将元素放在点击的.findpersonbtn上方。

答案 2 :(得分:0)

$(function(){
    $('button').click(function() {
    var text = $('textarea').val();
    alert(button);
    }
});
这样的事情?使用jQuery搜索获取textarea值,然后将该方法应用于变量并提醒它的文本。应该工作吗?

答案 3 :(得分:0)

您可能需要查看.previousSibling(),这应返回之前的输入。

http://jsfiddle.net/TbYup/