0

我正在尝试实现一个非常简单的 ajax 调用,但是自从我的第一个调用以来,出现了问题,我找不到原因。在用户从下拉列表中选择之后,我希望在相应查询之后完成表单的另一个字段。这是我的代码:jquery:

<script type="text/javascript">
    $(document).ready(function() {
        $('#id_veh_id1').bind('click', function () {
            var val1 =$("#id_veh_id1").val();
            $.get(""+val1+"/", function(data) {
                result=data.veh_length;
                document.getElementById('id_vlength').value=result;
            });
        });
    });
</script>

带网址:url(r'^(?P<user_id>\d+)/main_Webrequests/(?P<veh_id>\d+)/$', 'auth.views.test', name='test')

并查看:

def test(request, veh_id, user_id):   
    message = {"veh_length": ""}
    if request.is_ajax():
        vehicle1 = Vehicles.objects.get(id = veh_id)
        veh_length = vehicle1.vlength
        message['veh_length'] = vehicle1.vlength
    else:
        message = "yoohoo"
        json = simplejson.dumps(message)
    return HttpResponse(json, mimetype='application/json')

当我尝试veh_id而不是veh_length一切似乎都很好,但也许我对整个事情不太了解。

4

2 回答 2

0

simplejson 无法将 a 转储Decimal到 JSON,您应该可以通过以下方式解决该问题:

message['veh_length'] = "%d" % vehicle1.vlength
于 2012-07-25T13:47:05.547 回答
0

我认为您需要在 django 代码中序列化您的 json 数据.....查看此链接以获取更多参考..

https://docs.djangoproject.com/en/dev/topics/serialization/

于 2012-07-25T13:34:25.210 回答