【问题标题】:Ajax returns undefined on a SelectAjax 在 Select 上返回 undefined
【发布时间】:2014-04-16 22:04:08
【问题描述】:

我有这个将数据发布到 express/node 应用程序,然后写入 MongoDB 除了显示未定义的选定客户:$('#custs').val() 外,一切都运行良好。 这应该很简单,在客户端或服务器端都不会抛出异常...... 如何获取 select 的值?

提前致谢!

     function sendIt(){             
             $.ajax({                
            url: "/doIt",
            type: "POST",
            dataType: "json",               
            data: JSON.stringify({                   
                customer: $('#custs').val(),                     
                userID: $('#userID').val(),
                resource: $('#resID').val(),
                ticket: $('#ticketID').val(),
                issueDate: $('#IssueDate').val(),
                issueTime: $('#IssueTime').val(),
                TechName: $('#TechName').val(),
                Urgent: $('#isUrgent').val(),
                description: $('#descript').val()
            }),                 
            contentType: "application/json",
            cache: false,
            timeout: 5000,

                            <select id="custs">
                             <option value="JSC">JSC Co</option>
                              <option value="AGM">More</option>
                              <option value="SWW">Spunge Work</option>
                              <option value="BBV">BBV Corp</option>
                              <option value="UGL">UGL Corp</option>  
                            </select>

【问题讨论】:

  • 能否提供您所说的
  • 您是否指定了值和 ID?能否提供 HTML 代码?
  • 你确定一个id为custs的元素存在并且有value属性吗?你能发布 HTML 吗?
  • 假设您有一个元素的 idcusts 包含一个值,那么这正是您获得该值的方式。那行代码没有任何问题。
  • 我们必须猜测原因吗?

标签: javascript jquery ajax html


【解决方案1】:

不应该

function sendIt(){             
        // ...               
            customer: $('#custs option:selected').val(),                     
        // ...
        }),                 
        contentType: "application/json",
        cache: false,
        timeout: 5000,

?

Get SELECT's value and text in jQuery

【讨论】:

  • 虽然您提供的代码实际上会获得select 的值,但$('#custs').val() 也会。
  • 所以提供的代码将与 OP 的代码相同,为什么要否决一个正确的答案?
  • 错了。这不是对 OP 问题的正确答案。
  • 大家好,感谢大家的帮助,尝试了一切,仍然无法通过未定义的方式运行???在这一点上,我唯一能做的就是放下选择并让他们将其输入文本框中,yuk!
  • 您的选择是在页面中通过 ajax 加载还是在加载 DOM 时创建?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-16
  • 2019-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多