Javascript 如何解决ajax数据:不工作

Javascript 如何解决ajax数据:不工作,javascript,ajax,Javascript,Ajax,关于数据:不起作用如何修复?直到“alert(dwas)”成为Javascript对象,程序才会运行。这是正确的语法: $("select[name=expedition_name]").on("change", function() { var city_selected = $("option:selected", "select[name=city_name]").att

关于数据:不起作用如何修复?直到“alert(dwas)”成为Javascript对象,程序才会运行。这是正确的语法:

        $("select[name=expedition_name]").on("change", function() {
            var city_selected = $("option:selected", "select[name=city_name]").attr("id_city");
            alert(city_selected);
            var expedition_selected = $("select[name=expedition_name]").val();
            alert(expedition_selected);
            var total_weight_selected = $("input[name=total_weight]").val();
            alert(total_weight_selected);
            $.ajax({
                type: 'POST',
                url: 'cost.php',
                data: 'expediton=' + expedition_selected + '&city=' + $city_selected + '&weight=' + $total_weight_selected,
                success: function(result_cost) {
                    alert("dwsa");
                    $("select[name=cost_name]").html(result_cost);
                }
            })
        })

您从未在任何地方定义
$city\u selected
$total\u weight\u selected
不工作将是无效的错误。因为如果它确实不起作用的话,它是不需要的。控制台中报告的实际错误实际上很有帮助。在控制台中,您将在选择的
$city\u上获得未定义的var
etc@Getset我通常使用PHP轻松打开控制台(F12)。它准确地告诉你出了什么问题(“选择的$city_未定义”),这绝对是不正确的语法。同意@SebastianSimon。JSON采用
{“key1”:“value1”,“key2”:2}
的形式,其中
key2
的值上省略引号以表示非字符串文字。除非混合语法不覆盖JSONTANK you I have update答案,否则等号永远不会起作用。等号是从O.P.复制的。我忘了把它转换成
@GetSet@MRD请再核对一下答案。我已经用
更新了它,而不是
=
@AliSheikhpour请自己检查一下。该替换不会修复语法错误。在对问题的第一次评论中提到的参考错误也没有得到解决。jQuery的
数据
确实支持URL参数语法,因此问题归结为一个简单的输入错误。请投票表决结束。
data: {'expediton:' + expedition_selected + ',city:' + $city_selected + ',weight:' + $total_weight_selected}