简体   繁体   English

动态创建具有给定数据属性的javascript值?

[英]Dynamically create javascript values with given data-attributes?

I have build an dynamic ajax function that saves data-xxx -values of elements to process the data. 我已经建立了一个动态的ajax函数来保存data-xxx -values元素来处理数据。 However I want to shorten this code which takes values depending on the ajax-request I want to process: 但是我想缩短这段代码,该代码根据我要处理的ajax请求取值:

var data_form = $(element).attr('data-form');
var data_index = $(element).attr('data-index');
var data_hide_error = $(element).data('hide-error');
var data_disable_blur = $(element).data('disable-blur');
var data_hide_success = $(element).data('hide-success');

in a way that I only have one or two lines of code where I check which data-values are given in the element and if there is one data-value, I want to create a variable with that exact name. 以这样的方式,我只有一两行代码,其中我检查元素中给出了哪些数据值,如果有一个数据值,我想创建一个具有该确切名称的变量。

For example: I click on this anchor <a href="#" data-index="1" data-form="#registerForm">send</a> and my function would create the variables var data_index = 1; 例如:单击此锚点<a href="#" data-index="1" data-form="#registerForm">send</a>然后我的函数将创建变量var data_index = 1; and var data_form = '#registerForm'; var data_form = '#registerForm'; automatically. 自动。

How could I achieve this? 我怎样才能做到这一点?

Perhaps you meant this: Using .data() will return all data-attributes in one object to use in the function that you call 也许您的意思是这样:使用.data()将返回一个对象中的所有数据属性,以供您调用的函数使用

 $(function() { $("a").on("click",function(e) { e.preventDefault(); console.log($(this).data()) }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <a href="#" data-index="1" data-form="#registerForm">send</a> 

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

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