0

我的html:

<td class="result">
    <div id="main_title">
        <label for="textfield"></label>
        <input type="text" name="textfield" id="textfield" value="<?php echo $row['leftpanelmaintitle']; ?>" />
    </div>
    <div id="edit"><a href="#">EDIT</a></div>
    <div id="update"><a href="#">UPDATE</a></div>
</td>

我的js:

$('#edit').click(function()
    {

        $('#main_title').show(1000,function(){
            $('#update').show();
            $('#textfield').focus();
            });
        })

我想用通用选择器代替 $('#main_title')。那是前一个div的地址。

我试过了;

$(this).click(function()
    {

        $(this).prev('div').show(1000,function(){
            $('#update1').show();
            $('#textfield').focus();
            });
        })

bt 不工作。

4

2 回答 2

0

你可以这样做:

$('#edit').click(function () {
    $(this).prev('#main_title').show(1000, function () {
        $('#update').show();
        $('#textfield').focus();
    });
}); 

在这里,$(this).prev('#main_title')将为您提供上一个带有ID main_title的 div到当前单击的带有ID的 div edit

更新

您可以将一个名为的类添加edit到编辑按钮,并这样做:

$('.edit').click(function () {
    $(this).prev().show(1000, function () {
        $('#update').show();
        $('#textfield').focus();
    });
});

演示:小提琴

于 2013-10-27T11:23:33.050 回答
0

您应该$('id').children()通过写入当前 div 的 id 来获取前一个 div。

于 2013-10-27T11:24:20.770 回答