如何在JQuery中选择表单的父div?

时间:2010-12-06 08:53:54

标签: javascript jquery

这是我得到的

<div id="right">
    <from id="test">
        <input type="submit">
    </form>
    </div>

和lil jquery

    $(document).ready(function(){


        $('form').submit(function()
                         {
                             $(this).parent().html('<h1>1</h1>');
                         });
    });

您可以使用that here

并点击提交按钮,它应该<h1>1</h1> div#right,但它不会!

原因this在这种情况下是一个表单,但它适用于按钮标签或其他任何东西,我认为这是因为表单不是DOM节点。

那么如何选择表单的父级,或者换句话说,如何选择内容为Div的{​​{1}}?

更新:因为它是ajax调用的一部分,我想要将其分解并找到问题 但是我做了一个错字,花了我一个小时左右的时间,但是ajax的问题​​是你form内的$(this)不再是形式,所以我喜欢这个

success:

无论如何,我如何将这个问题标记为已解决?!

2 个答案:

答案 0 :(得分:3)

正如Chowlett所说,使用表格而不是来自。

然后该代码将起作用,因为提交函数中的$(this)将选择表单元素,其父元素是#right div。

您可以使用.parent(&#39; div&#39;)确保您选择div,而不是其他任何内容。

答案 1 :(得分:1)

因为它是ajax调用的一部分,我想打破它并找到问题,但我做了一个错误,花了我一个小时左右,但ajax的问题​​是$(this)成功:不是形式,所以我喜欢这个

$('form').submit(function(){
        form = $(this);//  I set the form to a varible !!

                 $.ajax({



   type: "POST", url: "ajax.php", data: $(this).serialize(),

                success: function(data){
                    $(form).parent().html(data); // I used the varible i set to form before!
                               }});