用ajax改变div文本不起作用

时间:2016-08-26 20:04:08

标签: c# jquery html ajax asp.net-mvc

我做错了什么?

我尝试用ajax更改div文本...但是没有做任何事情......我想问题出在我的控制器方法中..

这是我的div

<div id="div1">
   text to change
</div>

<button>change text</button>

@section scripts{
<script>
    $(document).ready(function() {
        $("button").click(function () {
            $.ajax({
                url: "/Home/ChangeText", success: function (result) {
                    $("#Div1").html(result);
                }
            });
        });
        });
</script>
}

这是我的控制器

public JsonResult ChangeText()
{
    var result = "New Text";

    return Json(result, JsonRequestBehavior.AllowGet);
}

注意:在运行时,请输入方法&#39; ChangeText&#39;但它不会在我的视图中打印结果(新文本)

1 个答案:

答案 0 :(得分:3)

您撰写了<div id="div1">$("#Div1").html(result);。但是div1不等于Div1,第一个符号很大(大写)。 JavaScript对大小写敏感。

type属性指定按钮的类型。始终指定<button>元素的type属性。不同的浏览器可能会为<button>元素使用不同的默认类型。如果要将数据发送到控制器 - 写入按钮类型type="button"type="submit"

属性值和描述:

  1. button - 按钮是可点击的按钮
  2. submit - 按钮是提交按钮(提交表单数据)
  3. reset - 该按钮是一个重置按钮(将表单数据重置为其初始值)
  4. 试试这段代码:

    <div id="div1">
       text to change
    </div>
    
    <button type="button">change text</button>
    
    @section scripts{
    <script>
        $(document).ready(function() {
            $("button").click(function () {
                $.ajax({
                    url: "/Home/ChangeText", success: function (result) {
                        $("#div1").html(result); // Div1 != div1
                    }
                });
            });
        });
    </script>
    }