当前位置: 首页 > 面试题库 >

用jQuery Ajax传递数据

淳于俊迈
2023-03-14
问题内容

我总是收到“错误”警报,但我无法弄清楚出了什么问题。我只是想取回我发送的字符串(“
testexpression”)。它必须与数据部分有关,因为没有参数就可以工作。

这是jQuery部分:

<script>

$("#meaning").blur(function () {

    $.ajax({ 
        type: "POST",
        url: '/GetMeaning/',
        data: {"expression" : "testexpression"},
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: successFunc,
        error: errorFunc
    });

    function successFunc(data, status) {
        $("#dictionaryDropDown").html(data);
    }

    function errorFunc() {
        alert('error');
    }
})
</script>

这是控制器:

    public class GetMeaningController : Controller
{
    //
    // GET: /GetMeaning/

    [HttpGet]
    public ActionResult Index()
    {
        return View();
    }

    [HttpPost]
    public ActionResult Index(string expression)
    {

        return Json(expression, JsonRequestBehavior.AllowGet);

    }

}

(更新:类型为post,我也尝试使用get进行测试,然后将其留在了里面)


问题答案:

您需要将数据作为字符串/ json发送。您正在发送一个javascript对象。另外,该URL可能需要是绝对URL,而不是相对URL

$("#meaning").blur(function () {

    $.ajax({ 
        type: "POST",
        url: '/GetMeaning/',
        data: JSON.stringify({expression: "testexpression"}),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: successFunc,
        error: errorFunc
    });

    function successFunc(data, status) {
        $("#dictionaryDropDown").html(data);
    }

    function errorFunc() {
        alert('error');
    }
})


 类似资料:
  • 问题内容: 这是我的 angularroute.html Route.js文件包含。 Route1.html 问题是它加载了页面,但我无法在route1.html上接收到获取参数值,表达式也未得到求值。可能是什么问题呢?谢谢。 问题答案: 从路线模板中删除不需要的所有内容。只需要您在模板正文中添加的内容。 这将包含在您在路线中配置的控制器的ng-view中。这是部分而不是完整的html文件。 另外

  • 主要内容:1、值传递,2、引用传递,3、输出传递通过前面的学习我们知道,在调用带有参数的函数时,需要将参数传递给函数。在介绍这几种传递方式之前,我们先来介绍一下形式参数(形参)和实际参数(实参)这两个概念: 形式参数:在定义函数阶段参数列表中定义的参数称之为形式参数,简称形参,可以将它看作变量的名称,它没有具体的值,只是用来接收函数调用时传递过来的数据; 实际参数:在函数被调用时传递给函数的参数称之为实际参数,简称实参,可以将它看作变量的值,用

  • 您可以将其他数据作为常规方法参数传递到后台任务。我再次使用下面的例子(希望没有让你厌恶): BackgroundJob.Enqueue(() => Console.WriteLine("Hello, {0}!", "world")); 在常规方法调用中,在执行后台作业期间, Console.WriteLine 方法将使用这些参数。为了参数传递进去,需要先序列化。 使用 了不起的 Newtonsof

  • 我是新手。有人能解释一下这个代码吗 公开课演示2{ } 结果打印出1,2,3,4,5和10,15,5,3

  • Go 语言中 值类型 有:int 系列、float 系列、bool、string、数组、结构体 值类型通常在栈中分配存储空间 值类型作为函数参数传递,是拷贝传递 在函数体内修改值类型参数,不会影响到函数外的值 package main import "fmt" func main() { num := 10 change(num) fmt.Println(num) // 10 }

  • 尽管应用中的大部分组件都依赖其他组件,但并不总是如此。同时 Windsor 用来查找满足依赖的正确组件的默认规则有时不得不进行调整。 如何做到这一点基于值的来源和获取值的地方。 Composition root - container.Resolve container.Resolve 方法有几个重载允许传递 IDictionary 作为参数(在这种情况下,建议使用 [Arguments] 类),