2014-07-25 150 views
0

我想通過的模糊事件來改變下一個追加表元素的輸入元件(.child)的值。主要JQuery的:更改所有兒童元素

HTML:

<input type="text" class="main" value="something"> 
<table> 
    <tr><td>Text</td><td><input type="hidden" class="child" value="anything"></td></tr> 
    <tr><td>Text</td><td><input type="hidden" class="child" value="anything"></td></tr> 
    <tr><td>Text</td><td><input type="hidden" class="child" value="anything"></td></tr> 
</table> 

JS:

$(".main").blur(function() { 
    var content = $(this).val(); 
    $(this).next("table").find(".child").val(content)); 
}); 
+0

製作一個JSFiddle並進一步解釋你的意思。它非常不清楚。 –

+0

這就是你需要的:http://api.jquery.com/each/ – melancia

回答

0
$(".main").blur(function() { 
    var content = $(this).val(); 
    $(this).next("table").find(".child").val(content); // Remove ')' here 
}); 

演示之後有一個額外的)

http://jsfiddle.net/k6qCx/

+0

'find'和'each'在這種情況下有什麼區別?由於上面MelanicialUK的評論... – user3142695

0

你可以這樣做:

$(".main").blur(function() { 
    var val = this.value; 
    $(this).next("table").find("td .child").each(function() { 
     $(this).val(val); 
    }); 
}); 
+0

他的'.child'是一個輸入元素 – nickanor

0

試試這個:

$(".main").blur(function() { 
    var content = $(this).val(); 
    $(this).next("table").find(".child").val(content); 
}); 

注:(content)) <--- remove that