Struts2 JQuery如何做onchange ajax

发布于 2024-09-13 01:57:49 字数 468 浏览 7 评论 0原文

假设我有这样的 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) 检索其值。

我怎么能做到这一点?

真的提前致谢。

K先生

Let's say I have sj:autocompleter like this :

<sj:autocompleter  id="idDistributor" 
name="idDistributor" 
list="%{idDistributorList}"  label="ID
Distributor"  indicator="indicator" />

when the value is changed, I'd like to pass the detail value to other text field like this :

<sj:textfield label="Nama Distributor" id="namaDistributor" name="namaDistributor" required="true"/>

where its value will be retrieved from struts back bean (FormAction).

How I could do this?

Really thanks in advance.

Mr.K

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

自我难过 2024-09-20 01:57:49

以下代码将自动完成器值发送到您的操作,并使用返回的字符串设置 #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."} 

您可以在 本文

The following will send the autocompleter value to your action and set the value of #namaDistributor with the returned string:

$('#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);
        }
    });
});

You can read more about the $.ajax() method here. The above json example assumes that your Action is creating a json object with the following format:

{"price": "123.40", "distributor": "XYZ Inc."} 

You can read more about using json with Struts2 in this article.

勿忘初心 2024-09-20 01:57:49

您可以使用 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 插件展示

you can do this with onSelectTopics.

Subscribe a topic like this:

<script>
$.subscribe('autocompleteSelect', function(event, data) {
  var ui = event.originalEvent.ui;
  $('#namaDistributor').val(ui.item.value);
});
</script>

and at it to your autocompleter

<sj:autocompleter  id="idDistributor" 
name="idDistributor" onSelectTopics="autocompleteSelect"
list="%{idDistributorList}"  label="ID
Distributor"  indicator="indicator" />

you can find an example for this in the Struts2 jQuery Plugin Showcase

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文