Passando $(this) para função - forma 2
HTML
<table>
<tr>
<td><input type="text" name="campo1" id="input[1]" data-id="1"></td>
<td><input type="text" name="campo2" data-id="2"></td>
<td><input type="text" name="campo3" data-id="3"></td>
<td>
<select name="campo4" data-id="4">
<option></option>
<option>Ola</option>
</select>
</td>
</tr>
</table>
<p id="resultado"></p>
JavaScript
// não precisa passar $(this) como parâmetro da função
$("table").on("change", "select", nome_funcao);
function nome_funcao(){
// imprime resultado$
$('#input\\['+($(this).data("id")-3)+'\\]').hide();
$("#resultado").html( "Input - ID: "+ $(this).data("id") );
$('#input\\['+($(this).data("id")-3)+'\\]').val('foi bosta ').show();
}