2013-05-16 41 views
0

我試圖從幾個輸入複製一個輸入模糊的文本如果一個目標輸入也是空白的,但不能得到它的工作。任何幫助,將不勝感激。jquery - 複製輸入文本onblur如果另一個輸入也是空的

var n = $('#Zip1').val; 
var m = $('#Cname').val; 
$('#Zip1').on('focus', function() { 
if (n.length === 0 && m.length === 0) { 
    $('#Cname').val($('#FName1').val && ' ' && $('#LName1').val); 
    $('#Address').val($('#Address1').val); 
    $('#City').val($('#City1').val); 
    $('#Zip').val($('#Zip1').val); 
} 
}); 

工作(不完全)例如:http://jsfiddle.net/4ZVTt/1/

** ---------- UPDATE ------------------ ----- **

謝謝大家!這裏是工作示例:

http://jsfiddle.net/4ZVTt/6/

回答

2

應該val()valval只是給你函數引用而不是函數的執行值。

var n = $('#Zip1').val(); 
var m = $('#Cname').val(); 
$('#Zip1').on('focus', function() { 
    if (n.length === 0 && m.length === 0) { 
     $('#Cname').val($('#FName1').val() && ' ' && $('#LName1').val()); 
     $('#Address').val($('#Address1').val()); 
     $('#City').val($('#City1').val()); 
     $('#Zip').val($('#Zip1').val()); 
    } 

}); 

的另一件事是,你正在做關於zip1在當時價值源文本中的焦點這個操作會在一開始空的,所以沒有什麼會是副本。您必須重新將焦點放在zip1文本框上進行復制。不知道這是你想要的。

+0

以防萬一你需要的小提琴http://jsfiddle.net/THvtm/ – PSL

1

你使用不當val()功能,改變valval()

var n = $('#Zip1').val(); 
0

除了已經指出的val()用法的錯誤。我想,而不是當Zip被聚焦時,donation領域的重點是它應該是,就是這樣它應該被複制到類似的賬單地址時間:

$('#Amount1').on('focus', function() { 
// More code here... 
}): 

此外,您使用maxlength=255所有領域。我認爲你應該謹慎使用Zip Code這樣的一個,我認爲你不需要255作爲長度,因爲5可能是合適的。

見我fiddle demo

相關問題