0

嗨,我正在 Django 中创建一个应用程序。我目前正在使用 Dajaxice 来渲染随机代码。

当我尝试将一些变量传递给它时,我无法访问我的 python 函数。无论我做什么,我都会得到 [object XMLHttpRequest]。

这是我的 html 网站中的 javascript 代码:

function valid_discount2(){
    var cell = document.getElementById('phone_number').value;
    var code = Dajaxice.chocolate.chocolate.cellphone(cell);
    alert ("CODE = " + code);
}

ajax.py 中的 python 代码:

from django.utils import simplejson
from dajaxice.decorators import dajaxice_register
from random import randint

@dajaxice_register
def cellphone(request, cell):
    random_number = randint(1000,9999)
    code = cell + str(random_number)
    return simplejson.dumps({'code':code})

我意识到如果我只是从 def cellphone(request, cell)[即def cellphone(request)]中删除单元格,我可以访问功能手机(请求)。

但是,我仍然得到 [object XMLHttpRequest] 结果。(我当然用函数 cellphone(request) 中的另一个变量定义单元格)

有什么提示吗?

4

1 回答 1

0

最后我决定使用 Dajax。如果对某人有任何帮助,这是我的解决方案:

ajax.py:

    @dajaxice_register(method = 'GET')
    def cellphone(request, cell):
        dajax = Dajax()
        random_number = randint(1000,9999)
        code = cell + str(random_number)
        dajax.assign('#code','value', code))
        return dajax.json()

javascript代码:

function valid_discount2(){
dajaxice.chocolate.chocolate.cellphone(Dajax.process,{'cell':$('#phone_number').val()})
}

我在 id=#code 的输入中显示“代码”,而不是在警报框中显示它。

于 2013-11-12T13:50:35.433 回答