ついに私はそれをしましたたくさんの友人に感謝します、そして 彼のコードのおかげで私はそれを適切に解決することができましたhttps://stackoverflow.com/users/87015/salman-a氏に特に感謝します。最後に、Groovy Grailsを使用しているので、コードは次のようになります。これが誰かに役立つことを願っています。
私のgspページではhtmlコードは次のようになります
<input id="populate-dropdown" name="nameofClient" type="text">
<input id="wilhaveid" name="idofclient" type="text">
スクリプト関数は私のgspページでは次のようになっています
<script>
$( "#populate-dropdown").on('input', function() {
$.ajax({
url:'autoCOmp',
data: {inputField: $("#populate-dropdown").val()},
success: function(resp){
$('#populate-dropdown').autocomplete({
source:resp,
select: function (event, ui) {
$("#populate-dropdown").val(ui.item.label);
$("#wilhaveid").val(ui.item.value);
return false;
}
})
}
});
});
</script>
そして私のコントローラーコードはこのようなものです
def autoCOmp(){
println(params)
def c = Client.createCriteria()
def results = c.list {
like("nameOfClient", params.inputField+"%")
}
def itemList = []
results.each{
itemList << [value:it.id,label:it.nameOfClient]
}
println(itemList)
render itemList as JSON
}
IDフィールドを非表示に設定していないもう1つの点は、最初は正確なIDを取得していることを確認していたため、非表示のままにしておくことができます。htmlの2番目の入力項目のテキストの代わりにtype=hiddenを配置するだけです。
ありがとう !