我有一个index.php
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
<?php
<input type="hidden" value="1" />
<input type="submit" id="button" value="submit">
?>
文件script.js中的我使用:
$(document).ready(function(){
$('#button').click(function(){
var id = $(this).find('input:hidden').val();
alert(id);
return false;
});
});
当使用srcipt.js从index.php获取id时,结果为“undefined”
答案 0 :(得分:2)
答案 1 :(得分:1)
$(this)指的是按钮本身。
如果您需要这样做,可以使用以下代码:
$(document).ready(function(){
$('#button').click(function(){
console.log(this);
var id = $(this).parent().find('input:hidden').val();
alert(id);
return false;
});
});
答案 2 :(得分:1)
$(this).find
只会查找嵌套在。
如果您需要查找所有输入:隐藏在同一级别,请使用$(this).parent().find('input:hidden')
答案 3 :(得分:0)
假设只有一个隐藏字段,您可以使用$('input:hidden')
$(this)
在这里并非绝对必要。
如果多于,您可以考虑为每个隐藏字段添加ID并单独引用它。