0

好的,我有这个功能可以从数据库中获取数据

 function ajaxd(){
      $.ajax({
       type: "GET",
       url: "getJackpot.asp?dx=<%=id%>",
       dataType: "text",
       data: "",
       success: function(data){
         Jackpot =data[0];

alert(data[0]);
       }
    });

下面是 getJackpot.asp 的 ASP 代码

    Dim rs, sql, varJackpot 

    set rs=Server.CreateObject("ADODB.RecordSet")
    sql = "select JackpotAmt from tblJAckpots where id = " & request("dx")
    rs.open sql, objConn, 3,2
        if not rs.EOF then
            varJackpot = cStr(rs("JackpotAmt"))
        else
            varJackpot = "Not Active"
        End If
    response.write varJackpot

上面的jquery脚本在主页面执行时,返回的data[0]只包含返回值的第一个数字。实际值为 6420.23 但警报功能仅显示 6 并忽略其余部分。我错过了什么?我怀疑 dataType 但不确定。

注意:在浏览器中执行 getJackpot.asp 会返回正确的值,没有错误。

4

2 回答 2

1

试试这个,

大奖=数据;

我认为 data[0] 会给你字符串输入的第一个字符。

于 2013-03-04T10:29:10.263 回答
0

我不是 ASP 人,但我在你的代码中发现了一些奇怪的东西:

  1. 首先,不要GET通过发送 URL 参数来发送请求。而是将dx参数作为参数的值传递,该data参数将在处理 AJAX 请求的代码中作为POST变量提供。(取决于什么对你有用!)

  2. 其次,我猜你必须在输出值后终止执行,在exit为 AJAX 打印输出后在 PHP 中使用这种方式。

  3. 检查Jackpot变量的数据类型,我认为您必须将其编码为 JSON。在 JS 方面,您可以使用$.parseJSON.

试试这些步骤,也许它会解决你的问题!

于 2013-03-04T10:14:56.517 回答