Jquery 如果为0,则使用其他字段值填充字段值
如果字段值1为0,我尝试用另一个字段值(值2)填充字段值(值1)。这就是我到目前为止所做的:Jquery 如果为0,则使用其他字段值填充字段值,jquery,Jquery,如果字段值1为0,我尝试用另一个字段值(值2)填充字段值(值1)。这就是我到目前为止所做的: jQuery(function() { var value1 = $('#input_41_49').val(); var value2 = $('#input_41_77').val(); if (jQuery(value1).val() == 0){ jQuery(value2).val(value1); } }); 当字段值更改时,如何执行此操作?尝试以下操作:在value1和value2中读
jQuery(function() {
var value1 = $('#input_41_49').val();
var value2 = $('#input_41_77').val();
if (jQuery(value1).val() == 0){
jQuery(value2).val(value1);
}
});
当字段值更改时,如何执行此操作?尝试以下操作:在
value1
和value2
中读取值,然后再次调用.val()
,而不是存储value1
和value2
的jquery对象,然后调用.val()
。还可以使用parseInt()
(或parseFloat()
如果是浮点值)将其与0
进行比较
jQuery(function() {
var value1 = $('#input_41_49');
var value2 = $('#input_41_77');
if (parseInt(jQuery(value1).val()) == 0){
jQuery(value2).val(value1);
}
});
使用太多jQuery,请更改为:
jQuery(function() {
var value1 = jQuery('#input_41_49');
var value2 = jQuery('#input_41_77');
if (parseInt(value1.val(), 10) == 0){
value1.val(value2.val());
}
});
对于更改事件,您可以使用:
$("#value2").on("input",function(e){
var $thisVal = $(this).val(),
$value1 = $("#value1");
if( parseInt(value1.val(), 10) == 10 ) {
value1.val($thisVal);
}
});
您想使用函数重载
val
var value2 = jQuery('#input_41_77');
$('#input_41_49').val(function(_,prevVal){
return prevVal == "0" ? value2 : prevVal;
});
试试这个代码
jQuery(function() {
var value1 = $('#input_41_49');
var value2 = $('#input_41_77');
if ($.trim(value1.val()) == 0){
value2.val(value1);
}
});
获取并比较Value1更改时的值:
$('#input_41_49').change(function() {
var value1 = $('#input_41_49').val();
var value2 = $('#input_41_77').val();
if (value1 == 0){
$('#input_41_47').val(value2);
}
});
小提琴以下代码不起作用
- 如果input1为空,则使用input2更改input1的值
- 如果input1是手动编辑的,并且input1包含一些值,则input2的更改不会反映在input1中
// assign the initial value1 var to value of input1 var init_value1 = $('#value1').val(); // if input 2 value changes: listen to input2 for cut, paste, keyup and change event $('#value2').on('cut paste keyup change', function(){ // if input1 initial value is empty assign input1 value to input2 value if(init_value1=== ''){ $('#value1').val($('#value2').val()); } }); // if input1 value changes: in case input1 is edited, listen to cut, paste, keyup, change $('#value1').on('cut paste keyup change', function(){ // assign input1 value to initial value1 variable init_value1 = $('#value1').val(); });
Ok,所以我使用的是:jQuery(function(){var value1=jQuery('#input_41_49');var value2=jQuery('#input_41_77');if(parseInt(value1.val(),10)==0){value1.val(value2.val())});但不起作用,如何使用更改事件,因此如果值1=0,则更改为值2?绑定到更改事件-请参阅上面的答案。@sideroxylon您可以在('input'…)事件上使用来检查更改事件,在我补充的回答中,你能解释一下为什么这个代码回答这个问题吗?你能解释一下为什么这个代码回答这个问题吗?不鼓励只使用代码的答案,因为它们不会教授解决方案。