有一个功能
function copyValueToInput(el, key) {
if (!el) return;
if(typeof el === "object"){
for(var key in el){
console.log(el[key]);
}
}else{
var o = document.querySelector('[data-key="' + key + '"]');
o && (o.value = el.value);
}
submitForm();
}
单击特定元素时调用函数有两个选项:
<input class="pickpoint_input -inited" type="radio" name="DELIVERY_STORE" id="DELIVERY_STORE_1" value="Москва, ул. Донгузская 19" data-point="93a4eb39" onclick="copyValueToInput(this, 'DELIVERY_STORE');">
<input class="pickpoint_input -inited" type="radio" name="DELIVERY_STORE" id="DELIVERY_STORE_2" value="Москва, ул. Терешковой 32" data-point="93a4eb59" onclick="copyValueToInput(this, 'DELIVERY_STORE');">
<input class="pickpoint_input -inited" type="radio" name="DELIVERY_STORE" id="DELIVERY_STORE_3" value="Москва, ул. Пролетарская 68" data-point="93a4eb75" onclick="copyValueToInput(this, 'DELIVERY_STORE');">
城市里有多少个这样的元素,就得到这个条件,在情况下是满足的else
,对于这个选项,你只需要点击商店。但是我需要选择某种交付类型并立即选择所需的商店,货物将从那里到达客户,因此我在所需交付类型的复选框中添加了相同的功能:
<input type="radio" name="ORDER_PROP_DELIVERY" id="ORDER_PROP_DELIVERY_COURIER" onclick="copyValueToInput(document.querySelectorAll('.pickpoint_input'), 'DELIVERY_STORE');">
事实证明,通过点击这个复选框,我传递了一个带有pickpoint_input类元素的对象,其中有几个输入,实际上我需要从它们那里获取具有属性的那个的值checked="checked"
,或者传递给该函数不是包含此类的所有元素的对象,而是立即将其传递给checked="checked"
,然后以某种方式获取值,我该怎么做?