我正在使用以下方式迭代 div
:
我可以在迭代中访问此 div
中的隐藏参数吗?
<DIV>
<div id="myDiv" <input type="hidden" name="Language" value="English"> />
</DIV>
$('#myDiv div.id').each(function() {
//access a hidden parameter of the current div here
});
最佳答案
您可以使用以下方法之一:
$('#myDiv div.id').each(
function(){
parameter = $(this).attr('data-hidden-parameter');
/* or:
parameter = $(this).data('hidden-parameter');
*/
});
第一个 parameter = $(this).attr('data-hidden-parameter')
需要以下结构:
<div class="id" data-hidden-parameter="value"><!-- other stuff --></div>
而后者则使用 jQuery 的 data()
方法进行获取/设置:
$(selector).data('hidden-parameter','value'); // sets
$(selector).data('hidden-parameter'); // gets
如果您的意思是从 div.id
元素的子元素隐藏元素中检索文本或其他内容/属性,标记如下:
<div class="id">
<input type="hidden" value="somethingOrOther" />
<span style="display: none;">Some text in a hidden element</span>
</div>
您可以通过以下方式检索该值:
$('#myDiv div.id').each(
function(){
parameter = $(this).find('input:hidden').val();
/* or:
parameter = $(this).find('span').text();
});
<小时/>
注意您的 jQuery 选择器意味着您正在根据这些元素的类迭代多个元素,而您的类名 id
则意味着您相反,我们正在尝试根据元素的 id
进行搜索。这可能是演示您的方法的伪代码,但请不要使用 id
的类名。这是完全正确的,但是却非常令人困惑。尽管这只是我个人的反对和回应。
已编辑,通过使用适当的选择器修改上述建议之一来提供更有针对性的答案:
var parameter = $('#myDiv').find('input:hidden[name="Language"]').val();
引用文献:
关于javascript - 访问div隐藏参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10737504/