美好的一天..
我有模态和模态里面我有div类
<div id="user-details-content" class="modal-body">
...
</div>
我使用ajax提供该模态内的内容。
这是提供的内容:
<div id="hidden" class="hidden">
<input type="hidden" name="id" class="id" id="id" value="1">
<input type="hidden" value="email@email.com" class="email">
</div>
现在我尝试使用此ajax
获取输入类型=“隐藏”var id = $(this).parents('#user-details-content').find('.id').val();
但它在我的console.log中返回undefined
有什么建议吗?关于如何获得输入类型=“隐藏”和值?
编辑 - 这是我的ajax功能
function inquiryId(){
var id = $(this).parents('#user-details-content').find('.id').val();
console.log(id);
$.ajax({
url: 'php_file.php',
type: 'POST',
data: { id: id,
},
dataType: 'json',
success: function(result){
console.log(result);
}
});
}
答案 0 :(得分:0)
可能会出现问题,因为您在加载DOM后加载了html。 我想你有一种事件听众的权利吗?
解决方法可能是这样的:
$(document).on('some_event', '#your_css_selector', function(e){
// do your stuff here
});
答案 1 :(得分:0)
只想获取输入类型=隐藏值?
无论隐藏还是显示,JQuery都可以获得价值。
$('#id').val();
$('.email').val();
这没关系。
答案 2 :(得分:0)
从代码行:
var id = $(this).parents('#user-details-content').find('.id').val();
如果您知道 id
的确切 class
和 input[type="hidden"]
属性,我建议您使用 $("#id").val()
和 $(".email").val()
。下面是一个展示我的建议的片段,希望它有所帮助。
$(function(){
$("button").click(function(event) {
buttonSubmit_OnClick();
});
});
function buttonSubmit_OnClick() {
var message;
message = "Hello " + $("#id").val() + "! ";
message += $(".email").val();
$("p").html($("p").html() + "<br>" + message);
/* $.ajax() code-block goes here */
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="hidden" class="hidden">
<input type="hidden" name="id" class="id" id="id" value="1">
<input type="hidden" value="email@email.com" class="email">
<button>Click me!</button><!-- this is for demo! -->
</div>
<p></p><!-- this is for demo! -->
&#13;
作为旁注:
为了更好地进行客户端代码优化:
$(this)
功能强大,但也是通配符。 jQuery总是更新this
,因此,this
可能并不总是您期望的那样。最好只在你真的需要时才使用,当你将它的引用存储在变量中时。请记住,凭借强大的力量,责任重大。
基于ID的选择器要快得多,因为它们使用 document.getElementById()
进行处理,而 .children()
是浏览器的原生代码,而不是通过jQuery&#39 s s选择引擎。
.parents()
或images | videos | reviews | publisherId
----------------------------------------------------------------------------
0 | 2 | 1 | 91
4 | 5 | 0 | 91
11 | 1 | 4 | 12
0 | 1 | 7 | 12
2 | 1 | 9 | 12
。这是关于optimizing jQuery selectors的更有说服力的阅读。