一般に、javascript イベントを html に添付することはお勧めできません。私の考えは、動的に div を作成し、入力フィールドのすぐ下に配置することです。次のコードが機能すると思います。ここにもjsfiddleがありますhttp://jsfiddle.net/krasimir/qCXPu/3/
<div class="wrapper">
<input type="text" id="one" class="suggest" />
<p>some text</p>
<input type="text" id="two" class="suggest" />
<p>some text</p>
<input type="text" id="three" class="suggest" />
</div>
JavaScript:
var inputs = document.querySelectorAll('.suggest');
for(var i=0; field=inputs[i]; i++) {
field.addEventListener('keyup', function(event) {
var text = 'You typed: ' + this.value;
if(!this.suggestion) {
var rect = this.getBoundingClientRect();
var left = rect.left;
var top = rect.bottom;
this.suggestion = document.createElement('DIV');
this.suggestion.innerHTML = text;
this.suggestion.setAttribute('style', 'background: #B0B0B0; padding: 6px; position: absolute; top: ' + top + 'px; left: ' + left + 'px;');
this.parentNode.appendChild(this.suggestion);
} else {
this.suggestion.innerHTML = text;
this.suggestion.style.display = 'block';
}
});
field.addEventListener('blur', function(event) {
if(this.suggestion) {
this.suggestion.style.display = 'none';
}
});
}