繁体   English   中英

DOM上的Click事件返回父亲的属性

[英]Click event on DOM return father's attribute

这是一个普通的HTML文件,其中包含一个表单,并且具有一些子标签(部分代码):

<form name="search" action="/cgi-bin/MAPSEARCH2" method="get" onsubmit="var the_result = checkMapNumbers();
return the_result;">
  <input type="hidden" name="LOCAL" value="ALE">
  <table width="700">
    <tbody>

      <td width="20">
       <input type="radio" name="ORDER" value="NAM" checked=""></td>
      <td width="100" valign="top"><font style="color:#330099;">Owner´s Name:</font></td>

   </tbody></table>
</form>

我要做的就是在所有类型的“输入”标签上添加一个click函数:并返回两个值:

父亲“ form”的“ method”和“ action”属性。

以下是我的JS代码:

$(document).ready(function(){                                          
    $("input").click(function(){
    var a=$(this).parents("form").method;
    var b=$(this).parents("form").action;    
    $("#test1").text("parents.name:"+ a+ "parents.action"+b);
    });
});

但是,在浏览器中单击任何输入元素后,方法和操作值的输出为“未定义”。 如何返回正确的功能。

 var a=$(this).parents("form").method; 

使用简单的本机DOM

var a = this.form.method;

适当的 jQuery:

var a = $(this).parents("form").prop('method');

action属性相同。

使用.prop() ,它获取属性的值

var a=$(this).closest("form").prop('method');
var b=$(this).closest("form").prop('action');  

尝试这个,

   $(document).ready(function(){                                          
        $("input").click(function(){
        var a=$(this).closest("form").attr("method");
        var b=$(this).closest("form").attr("action");    
        $("#test1").text("parents.name:"+ a+ "parents.action"+b);
        });
    });

小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM