首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ajax请求后重新填充select

ajax请求后重新填充select
EN

Stack Overflow用户
提问于 2010-10-15 21:12:33
回答 3查看 271关注 0票数 1

我有一个选择,允许用户选择多个选项。在同一页上还有一个表单,它允许用户添加新的关键字,这些关键字将出现在选择中。

我的javascript向php脚本发送一个ajax请求,该脚本要么返回成功消息,要么返回错误消息,然后将其添加到dom中。

脚本的ajax部分如下所示

代码语言:javascript
复制
$.post(
        metadataAction,
        {
            dateOfUpdate:dateOfUpdateVal,
            metadataStandardName:metadataStandardNameVal,
            metadataLanguage:metadataLanguageVal
        },
        function(responseText) {
            $('body').append(responseText);
        },
        "html"
);

我只想重新填充选项时,新的关键字已成功添加。

有没有人对实现这一目标的最好方法有什么建议?

谢谢你的帮助。

EN

回答 3

Stack Overflow用户

发布于 2010-10-15 21:31:17

代码语言:javascript
复制
$.post(
        metadataAction,
        {
            dateOfUpdate:dateOfUpdateVal,
            metadataStandardName:metadataStandardNameVal,
            metadataLanguage:metadataLanguageVal
        },
        function(responseText) {
            $('body').append(responseText);
            $('#select_id').append('<option>'+responseText+'</option>');
        },
        "html"
);
票数 0
EN

Stack Overflow用户

发布于 2010-10-15 21:39:39

将消息附加到正文看起来有点奇怪,但不管怎样..

返回表示具有以下两个属性的对象的JSON字符串:successbool、messagestring

没有使用php的经验,但是如果响应的类型是JSON,那么jQuery(1.4.2)会将其解析为对象,然后在您的成功函数中:

代码语言:javascript
复制
function(data)
{
  if(data.success)
  {
    //append the item
  }
  //show the message
  $(msgCont).text(data.message)
}

请注意,如果响应状态代码为200(或任何其他2XX),您将始终进入成功函数

票数 0
EN

Stack Overflow用户

发布于 2010-10-15 22:45:48

为了解决这个问题,我让php脚本输出一个json对象。

如果添加成功,则json具有三个属性。

成功、消息和newSelect。我在ajax响应中检查是否成功。如果存在,我将使用jquery方法replaceWith()将表单中当前的select更新为返回的select。

谢谢你的帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3942529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档