Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Ajax MVC4更新div_Javascript_Jquery_Asp.net Mvc 4 - Fatal编程技术网

Javascript 使用Ajax MVC4更新div

Javascript 使用Ajax MVC4更新div,javascript,jquery,asp.net-mvc-4,Javascript,Jquery,Asp.net Mvc 4,我似乎不明白在选择了一个类别之后如何更新一组项目。我已经走了这么远,现在很困惑。如何将视图中的值输入控制器以进行查询 //get <li> clicked and display the items in that category $(document).ready(function() { $('#test li').click(function() { var selector = "input[name='" + $(this).id + "value']";

我似乎不明白在选择了一个类别之后如何更新一组项目。我已经走了这么远,现在很困惑。如何将视图中的值输入控制器以进行查询

 //get <li> clicked and display the items in that category
 $(document).ready(function() {
$('#test li').click(function() {
    var selector = "input[name='" + $(this).id + "value']";
    var catID = $(selector).val(); 

    $.ajax({
        url: "...",
        type: "get",
        data: {//return all the item info},
        success: function(data) {
            //update div contents here?

        }
    });
});
});

我在这里回答了一个非常类似的问题,尽管示例使用的是PHP。然而,基本思想是相同的。MVC4将返回一些将转换为HTML的数据类型(最简单的方法是直接返回HTML),然后将此HTML值附加到DOM元素(在本例中,是您选择的div项)

JQuery看起来也很相似:

var request = $.ajax({
      type: "POST",
      url: "example.php",
      data: data_obj,
      dataType: "html"
   }).done(function(msg) {
         $("#example_element").append(msg);
      }

我在这里回答了一个非常类似的问题,尽管示例使用的是PHP。然而,基本思想是相同的。MVC4将返回一些将转换为HTML的数据类型(最简单的方法是直接返回HTML),然后将此HTML值附加到DOM元素(在本例中,是您选择的div项)

JQuery看起来也很相似:

var request = $.ajax({
      type: "POST",
      url: "example.php",
      data: data_obj,
      dataType: "html"
   }).done(function(msg) {
         $("#example_element").append(msg);
      }

而不是两个li

<li>@item.item_name</li>
<li><input type="hidden" class="item_id" value="@item.ID" /></li>

而不是两个li

<li>@item.item_name</li>
<li><input type="hidden" class="item_id" value="@item.ID" /></li>

使用Ajax.BeginForm,如下所示:

@使用(Ajax.BeginForm(“Index”,“Home”,新的AjaxOptions{HttpMethod=“POST”,UpdateTargetId=“youDivId”}))


使用上述方法并使控制器返回空间视图将使用部分视图结果更新div,如下所示:

@使用(Ajax.BeginForm(“Index”,“Home”,新的AjaxOptions{HttpMethod=“POST”,UpdateTargetId=“youDivId”}))


使用上述方法并使控制器返回
空间视图
将使用
局部视图结果更新div

因此,当我调用控制器中的函数来过滤结果时,ajax的id是否会被传递?这
var catID=$(选择器).val()传递到此
公共操作结果PartialTwo(int-id)
中,我可以使用InsertionMode替换吗?阿贾沙赫还是个新手,我道歉。你的头衔让我觉得你在这个问题的ajax部分。您是否在询问如何将catID获取到查询中?因此,当我调用控制器中的函数来过滤结果时,ajax的id会被传递?这
var catID=$(选择器).val()传递到此
公共操作结果PartialTwo(int-id)
中,我可以使用InsertionMode替换吗?阿贾沙赫还是个新手,我道歉。你的头衔让我觉得你在这个问题的ajax部分。您是在问如何将catID用于您的查询吗?是的!这就是我一直想弄明白的。所以我不需要所有的AjaxOption,比如数据、数据类型等?不,实际上这取决于需求,但如果你只想从url加载html结果,你不需要,你知道我在哪里可以找到更多关于这个的信息吗?似乎每个教程都只讨论ajax操作链接和表单。我似乎找不到这种材料不,对不起,我不知道有关它的任何具体材料。但是,如果您知道的足够多,您不需要使用可以通过jQuery处理的帮助程序。好的,谢谢。还有一件事。我应该将控制器添加到url请求的前面吗
var requestPage=“Item/PartialTwo?id=“+$(this).data(“id”)是!这就是我一直想弄明白的。所以我不需要所有的AjaxOption,比如数据、数据类型等?不,实际上这取决于需求,但如果你只想从url加载html结果,你不需要,你知道我在哪里可以找到更多关于这个的信息吗?似乎每个教程都只讨论ajax操作链接和表单。我似乎找不到这种材料不,对不起,我不知道有关它的任何具体材料。但是,如果您知道的足够多,您不需要使用可以通过jQuery处理的帮助程序。好的,谢谢。还有一件事。我应该将控制器添加到url请求的前面吗
var requestPage=“Item/PartialTwo?id=“+$(this).data(“id”)
<li data-id="@item.ID">@item.item_name</li>
$("#test li").on("click",function(){

    var requestPage = "/PartialTwo?id=" + $(this).data("id");
    $.get(requestPage, function(result){
        $("#content").html(result); // where you want to put the result
    });
});