使用 jQuery 数据属性设置多个表单值
Set multiple form values using jQuery Data attribute
- 假设我有一个 ID 为#form 的表单,它有两个输入字段,即标题和价格。
- 我在应用程序某处单击编辑按钮,该按钮具有要分配给 # 的数据属性(例如 data-title="Apple" data-price="10")单击按钮后形成。
- 明显可行的解决方案是
$("#name").val($(this).data('name'));
$("#price").val($(this).data('price'));
- 当字段太多时,这显然看起来很糟糕。所以我试图让这样的东西工作
$('#form').data($(this).data());
,或多或少在一个像
- 试了这么多方法都没有成功
感谢任何帮助
您可以创建一个 jquery 插件,您可以从包含数据点的元素中调用该插件,并让它根据键将数据应用于同名表单中的元素。下面的例子
$.fn.applyData = function(form) {
$form = $(form);
$.each($(this).data(), function(i, key) {
$form.find('#' + i).val(key);
});
};
JSFiddle:http://jsfiddle.net/LCM8S/43/
- 假设我有一个 ID 为#form 的表单,它有两个输入字段,即标题和价格。
- 我在应用程序某处单击编辑按钮,该按钮具有要分配给 # 的数据属性(例如 data-title="Apple" data-price="10")单击按钮后形成。
- 明显可行的解决方案是
$("#name").val($(this).data('name')); $("#price").val($(this).data('price'));
- 当字段太多时,这显然看起来很糟糕。所以我试图让这样的东西工作
$('#form').data($(this).data());
,或多或少在一个像 - 试了这么多方法都没有成功
感谢任何帮助
您可以创建一个 jquery 插件,您可以从包含数据点的元素中调用该插件,并让它根据键将数据应用于同名表单中的元素。下面的例子
$.fn.applyData = function(form) {
$form = $(form);
$.each($(this).data(), function(i, key) {
$form.find('#' + i).val(key);
});
};
JSFiddle:http://jsfiddle.net/LCM8S/43/