[英]Struts2 JQuery how to do onchange ajax
假設我有這樣的sj:autocompleter:
<sj:autocompleter id="idDistributor"
name="idDistributor"
list="%{idDistributorList}" label="ID
Distributor" indicator="indicator" />
當值改變時,我想將細節值傳遞給其他文本字段,如下所示:
<sj:textfield label="Nama Distributor" id="namaDistributor" name="namaDistributor" required="true"/>
其值將從struts back bean(FormAction)中檢索。
我怎么能這樣做?
非常感謝提前。
Mr.K
以下內容將autocompleter值發送到您的操作,並使用返回的字符串設置#namaDistributor
的值:
$('#idDistributor').change(function(){
// Make the ajax request
$.ajax({
url: 'path/to/back-bean.action',
data: "autocompleterValue=" + $(this).val(),
dataType: "json",
success: function(data) {
// Set the inputs from the json object
$('#namaDistributor').val(data.distributor);
$('#namaPrice').val(data.price);
}
});
});
您可以在此處閱讀有關$ .ajax()方法的更多信息。 上面的json示例假設您的Action正在使用以下格式創建json對象:
{"price": "123.40", "distributor": "XYZ Inc."}
您可以在本文中閱讀有關在Struts2中使用json的更多信息。
你可以用onSelectTopics做到這一點。
訂閱這樣的主題:
<script>
$.subscribe('autocompleteSelect', function(event, data) {
var ui = event.originalEvent.ui;
$('#namaDistributor').val(ui.item.value);
});
</script>
並在它自動完成
<sj:autocompleter id="idDistributor"
name="idDistributor" onSelectTopics="autocompleteSelect"
list="%{idDistributorList}" label="ID
Distributor" indicator="indicator" />
你可以在Struts2 jQuery插件展示中找到一個例子
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.