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付き: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

jsonデータをdjangoコードでシリアル化する必要があると思います.....詳細については、このリンクを確認してください。

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

于 2012-07-25T13:34:25.210 に答える
0

simplejsonはDecimalJSONにダンプできません。次のような方法で回避できるはずです。

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