我有一个<select>
下拉列表,我通过jQuery插入到我的HTML中。我无法控制HTML,但我可以控制JavaScript。
当您选择一个选项时,我正试图为<input>
元素赋一个值。基本上,我有一个<select>
元素<option id="1">
和<option id="2">
onChange 这个<select>
元素;
如果您选择option#1
,则应将值 dummy1 设为input[name="Check_Config_PaymentGateway_CreditCards_Login1"]
,将值 dummy2 设为input[name="Check_Config_PaymentGateway_CreditCards_Password"]
如果您选择option#2
,则应将 dummy3 的值设为input[name="Check_Config_PaymentGateway_CreditCards_Login1"]
,将值 dummy4 设为input[name="Check_Config_PaymentGateway_CreditCards_Password"]
/ p>
我一直在研究jsFiddle。
我对JavaScript很新,更不用说jQuery了。这是我熟练的方法......如果你能帮助我,我真的很感激。
答案 0 :(得分:0)
尝试以下内容,
编辑:缓存输入文本框。
var dummyValues = [['dummy1', 'dummy2'], ['dummy3', 'dummy4']];
var $loginInput = $('input[name=Check_Config_PaymentGateway_CreditCards_Login1]');
var $pwdInput = $('input[name=Check_Config_PaymentGateway_CreditCards_Password]');
$('#paymentDD').change(function () {
var selectedVal = parseInt($(this).val(), 10) - 1;
$loginInput.val(dummyValues [selectedVal][0]);
$pwdInput.val(dummyValues [selectedVal][1]);
});
在向下拉菜单添加移动选项时更新了dummyValues
var。
答案 1 :(得分:0)
我尽可能地喜欢缓存元素,这就是我的工作。我还看到你在jsFiddle中使用了最新的jQuery(1.7.2),为什么不使用推荐的 .on()
方法,然后立即调用 {{3} 填充加载?
的 .change()
强> 的
var $span = $('span#print_pagename'),
$login = $('input[name="Check_Config_PaymentGateway_CreditCards_Login1"]'),
$password = $('input[name="Check_Config_PaymentGateway_CreditCards_Password"]'),
$select = $('<select><option id="1">1</option><option id="2">2</option></select>');
$span.after($select);
$select.on('change', function() {
var $this = $(this);
if ($this.val() === '1') {
$login.val('dummy1');
$password.val('dummy2');
} else if ($this.val() === '2') {
$login.val('dummy3');
$password.val('dummy4');
}
}).change();
答案 2 :(得分:0)
在这里:http://jsfiddle.net/VW9N6/6/
这会绑定change
元素的<select>
事件,以检测其值何时更改,然后更新<input>
元素的值。