仅供参考:由于其他原因,我必须使用data-label
作为选择器。
我需要存储表单中的值以便稍后通过js使用,这样当用户切换单选按钮时,值将重新插入到表单输入中。
如何存储值,然后在用户单击单选按钮时重新插入它们?这就是我所在的地方:
// user clicks initially, then the values would be stored..
$('[data-label="FrenchCheckbox"] [data-label="State1"] [data-label="Checkbox"] [data-label="Unchecked"]').click(function() {
// want to store the initial value now!!
// ..then translating the form inputs to another lang
$('[data-label="Create StepWizard"] [data-label="CreateAssetInput"]').each(function(i, ele) {
var tString = $(ele).val();
if(tString.length <= 0) return;
var tSrc = 'en';
var tDst = 'fr';
var key = 'my api key';
var tUrl = "https://www.googleapis.com/language/translate/v2?key=" + key + "&source=" + tSrc + "&target=" + tDst + "&q=" + tString;
$.get(tUrl, function(response) {
$(ele).val(response.data.translations[0].translatedText);
});
});
});
然后当用户点击单选按钮(下面第一行)时,将初始值重新插入表单字段?
$('[data-label="LanguageRadioButtons"] [data-label="French"] [data-label="Radio Button"] [data-label="Initial"] ').click(function() {
// how do I reinsert the values from the initial input?
});
感谢您的想法!
答案 0 :(得分:0)
一种简单的方法是使用jQuery data()
// want to store the initial value now!!
$(this).data('default', $(this).val());
然后重置:
/* within event handler */
$(this).val( $(this).data('default') );