javascript-在jquery中更新自定义数据属性名称
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-在jquery中更新自定义数据属性名称,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2403字,纯文字阅读大概需要4分钟。
内容图文
![javascript-在jquery中更新自定义数据属性名称](/upload/InfoBanner/zyjiaocheng/660/48669c0b5c1843ab987c6004baaf9634.jpg)
我的页面上有几个列表,请参见下面的示例
<div id="test1" class="testlist">
<ul>
<li title="test" data-view="0">Any</li>
<li title="test" data-view="101">list item 101</li>
<li title="test" data-view="102">list item 102</li>
<li title="test" data-view="103">list item 103</li>
<li title="test" data-view="104">list item 104</li>
<li title="test" data-view="105">list item 105</li>
<li title="test" data-view="106">list item 106</li>
<li title="test" data-view="107">list item 107</li>
<li title="test" data-view="108">list item 108</li>
<li title="test" data-view="109">list item 109</li>
</ul>
</div>
<div id="test2" class="testlist">
<ul>
<li title="test" data-view="0">Any</li>
<li title="test" data-view="101">list item 101</li>
<li title="test" data-view="102">list item 102</li>
<li title="test" data-view="103">list item 103</li>
<li title="test" data-view="104">list item 104</li>
<li title="test" data-view="105">list item 105</li>
<li title="test" data-view="106">list item 106</li>
<li title="test" data-view="107">list item 107</li>
<li title="test" data-view="108">list item 108</li>
<li title="test" data-view="109">list item 109</li>
</ul>
</div>
我希望data-view属性具有父ID的名称.
例如:在第一个列表中,数据视图应称为data-viewtest1,在第二个列表中,它们应为data-viewtest2
我有以下js:
$("li").each(function () {
var id = $('.testlist').attr('id') || '';
console.log(id);
$(this).attr({
newData: $(this).attr('data-view'),
//data-view: $(this).attr('data-view'),
})
.removeAttr('data-view');
});
我可以替换属性data-view并将其命名为newData,但是如果尝试将其重命名为data-view
我收到语法错误
SyntaxError: missing : after property id
有没有一种方法可以重命名数据属性?
我希望它是:
data-view + id: $(this).attr('data-view'),
同样在console.log中,我得到20个test1,我应该得到10个test1和10个test2,还有另一种方法可以做到这一点吗?
参见this fiddle中的示例.
解决方法:
我不确定您要完成什么,但是我要解决您的问题:
语法错误
将数据视图括在引号中.
20测试1与10测试1和10测试2
当您执行$(‘.testlist’).attr(‘id’)时,它将仅使用选择器的第一个结果test1.尝试这样的事情:
var id = $(this).parents('.testlist').attr('id') || '';
尝试动态设置属性名称
尝试使用object [property] = value语法.像这样:
$("li").each(function () {
var id = $(this).parents('.testlist').attr('id') || '',
newAttributes = {};
newAttributes['data-view-' + id] = $(this).attr('data-view');
$(this).attr(newAttributes).removeAttr('data-view');
});
内容总结
以上是互联网集市为您收集整理的javascript-在jquery中更新自定义数据属性名称全部内容,希望文章能够帮你解决javascript-在jquery中更新自定义数据属性名称所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。