成功显示上一个选择器的结果

时间:2014-03-30 09:37:35

标签: jquery

我希望将我的ajax调用成功结果显示在我表单的上一个div中。

- 我要更新的div

<div id="data">   </div>

- 我的ajaxbutton

 <div id='ajaxbutton'>
        <input type="submit" name="yt0" value="Update Data" id="yt0" />
    </div>

我的jquery

jQuery('body').on('click','#yt0',function(){jQuery.ajax({'type':'POST',
                  'success':function(string){ 
                             var $thisClicked = $(this);
                             $(this).prev().html(string).slideDown(2000);

...

因此,当我点击按钮时,没有任何反应,它显然没有找到选择器。

我必须添加以下内容,

  1. 当我使用

    $("#data").html(string).slideDown(2000);
    
  2. 而不是

         $(this).prev().html(string).slideDown(2000);
    

    它有效。但我需要充满活力。

    2.我不能使用在

    中插入data-id="1"的技巧
    <input type="submit" name="yt0" value="Update Data" id="yt0" />
    

    因为它是生成的按钮

    3.滑动没有效果

    - 添加了html的正文部分

    <body>
    
    <div class="container" id="page">
    
        <div id="header">
            <div id="logo">My Web Application</div>
        </div><!-- header -->
    
        <a href="/blog/index.php/post/16">16</a>    
        <b> Subject:</b>
            blabla A
        </br>
            <div class="formComment"> </div>
                <p><input type ="button" id="comment16" 
                    value="Comment"></p>
    </div>  
    <div id="data">
    
    </div>
    <div id='ajaxbutton'>
    <input type="submit" name="yt0" value="Update Data" id="yt0" /></div>
    
    <a href="/blog/index.php/post/17">16</a>    
        <b> Subject:</b>
            blabla B
        </br>
            <div class="formComment"> </div>
                <p><input type ="button" id="comment18" 
                    value="Comment"></p>
    </div>  
    <div id="data">
    
    </div>
    <div id='ajaxbutton'>
    <input type="submit" name="yt1" value="Update Data" id="yt1" /></div>
    
    </body>
    

    - div id =&#34;数据&#34;将成为div id =数据+ id_post的数量,这就是我需要成为动力的原因 -

    任何帮助?

1 个答案:

答案 0 :(得分:0)

Okey,首先,您不应该在页面上有多个具有相同id的元素(例如data)。可能最好使用class作为他们的。

你的元素data不是按钮的前一个(它是按钮父级的前一个)。您应该使用以下代码:

$(this).parent().prev().html(string).slideDown(2000);
相关问题