javascript - jquery变量没有被发送

标签 javascript php jquery ajax

我对 jQuery 和 JS 非常陌生。我环顾四周,没有找到在我脑海中闪过的答案。

我正在做典型的一个下拉内容取决于另一个人的选择。除了从第一个下拉框中提取变量的部分外,我完全可以正常工作。

这是我的代码:

HTML:

<p>Processor Assignment *<br><small>Please Choose the Processor whom you are assigning this Serve.  Only Network Member Providers are shown in this list.</small></p>
<select name="assigned_to" id="assigned_to">
   <option value="2">test</option>
   <option value="3">Test_Processor</option>
</select>

<p>Service Type*</p>
<p id="services_list">Please choose a processor.</p>

JS:

$(document).ready(assigned_to_selectbox_change);

function assigned_to_selectbox_change() {
    $('#assigned_to').change(update_services_list);
}

function update_services_list() {
    var processor_id = $('#assigned_to').attr('value');
    $.get('http://example.com/path/to_ajax/method/' + processor_id, show_services_list);
}

function show_services_list(services) {
    $('#services_list').html(services);
}

如果我对其进行硬编码,IE http://example.com/path/to_ajax/method/3 这一切都可以顺利进行。一切都按预期填充。

知道为什么它没有获取 assigned_to 值吗?我已确认 PHP/MySQL/etc 工作正常并在传递变量时返回正确的结果。

最佳答案

尝试使用 .val() 而不是 .attr('value'):

 var processor_id = $('#assigned_to').val();

此外,如果没有特定原因将您的代码拆分为这么多函数,我觉得这样更简洁:

$(document).ready(function() {
    $('#assigned_to').change(function() {
        $.get('http://example.com/path/to_ajax/method/' + this.value, function(services) {
            $('#services_list').html(services);
        });
    });
}));

关于javascript - jquery变量没有被发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21032795/

相关文章:

javascript - 在这种情况下,为什么 setViewValue() 没有更新所有地方的值?

Javascript将空格替换为破折号,破折号前后的空格除外

php - 使用 php 的多查询搜索表单

php - 在 magento 中获取产品 ID

java - php java 桥不能在 tomcat 6 上工作

jquery - jquery GET 调用比 Angular $http.get 更快吗

javascript - 检索具有特定类的 <li> 元素的 id

javascript属性动态更新

jQuery Chosen 插件动态添加选项

javascript - 对 MongoDB 的重复 Node.js 请求最终会变慢