首页新闻找找看学习计划

ajax提交查询的问题

0
悬赏园豆:50 [已解决问题] 解决于 2013-02-26 11:08

我在页面上有一个下拉列表框和一个输入框,输入相应的信息后提交如图后台ajax代码如下

 1 //选择条件查询
 2         function search() {
 3             //当前选择的查询字段名称
 4             var strFieldName = $('#select').val();
 5             //输入的值
 6             var strFieldValue = $('#txt').val();
 7 
 8             $.ajax({
 9                 type: 'POST',
10                 url: "PeopleClubBureau/GetSearch",
11                 cache: false,
12                 data: { "strFieldName": strFieldName, "strFieldValue": strFieldValue },
13                 dataType: "json",
14                 success: function (data) {
15                 
16                     
17                 }
18             });
19         }

这个提交我在controller中做断点可以获取到相应的值,也能查询到数据,但是前段就是不刷新,不知道怎么回事???新手刚学mvc希望大虾指教

独孤雄的主页 独孤雄 | 初学一级 | 园豆:165
提问于:2013-02-17 09:24
< >
分享
最佳答案
0

这个问题已经解决了,用的是局部刷新技术

独孤雄 | 初学一级 |园豆:165 | 2013-02-26 11:06
其他回答(9)
0

不刷新 啥意思,ajax 页面是不刷新的。

收获园豆:1
Qlin | 园豆:2403 (老鸟四级) | 2013-02-17 09:30

可以加一下qq详解一下吗?可能我说的不是很清楚757966892

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 09:36
0

ajax只能实现局部刷新,你要指定哪个部分刷新啊。

收获园豆:49
snjsunyan | 园豆:55 (初学一级) | 2013-02-17 10:15

我试过了,在这个页面中有个table

@foreach (CH.SZ.Netting.Domain.Entities.PCB_Information item in Model)
        {           
        
            <tr id="trData">
                <td>
                    <div align="center">
                        <input type="checkbox" name="fav" class="articleSelect" value="@item.PCBID" /></div>
                </td>
                <td>
                    <div align="center">@item.IdCardNumber</div>
                </td>
                <td>
                    <div align="center">@item.Education</div>
                </td>
                <td>
                    <div align="center">@item.OECompany</div>
                </td>
                <td>
                    <div align="center">@item.OECOCode</div>
                </td>
                <td>
                    <div align="center">@(item.DimissionState == 0 ? "" : "")</div>
                </td>
                <td>
                    <div align="center">@item.BusinessType</div>
                </td>
                <td>
                    <div align="center">@item.BusinessInfo</div>
                </td>
                <td>
                    <div align="center">@item.OENumber</div>
                </td>
                <td>
                    <div align="center">@item.SENumber</div>
                </td>
                <td>
                    <div align="center">@item.SEAddress</div>
                </td>
                <td>
                    <div align="center">@item.SECompany</div>
                </td>
                <td>
                    <div align="center">@item.SEType</div>
                </td>
                <td>
                    <div align="center">@item.TaxAmount</div>
                </td>
                <td>
                    <div align="center">@item.BailTime</div>
                </td>
                <td>
                    <div align="center">@item.Note</div>
                </td>
                <td>
                    <div align="center"><a href="#" iconCls="icon-edit" plain="true" onclick="e_dlg(@item.PCBID)">编辑</a></div>
                </td>
            </tr>

        }

也是刷新不了,这个怎么解决??

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 10:22
0

前段为何要全部的刷新,你在后端返回你想要的数据,然后在success中显示出来,就行了啊

chenping2008 | 园豆:9836 (大侠五级) | 2013-02-17 11:13

你是说把data数据取出来然后去拼吗???我不是很明白啊!!菜鸟

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 11:19
0

数据已经在data里面了,你没有对data处理页面怎么会变化呢,

老孟Flutter | 园豆:55 (初学一级) | 2013-02-17 11:50

除了这种方式还有没有别的办法做这个查询操作

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 12:02

@独孤雄: 你把具体的要求说下吧,比如数据绑定到什么上,

支持(0) 反对(0) 老孟Flutter | 园豆:55 (初学一级) | 2013-02-17 14:18
0

$.post(); 我喜欢这样写

1行受影响 | 园豆:113 (初学一级) | 2013-02-17 13:25

可不可以来个具体的实例我一直在解决这个问题但是还不想不到办法

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 13:33
0

你这个已经对了  只是你把后台穿过来的data操作就可以了啊  比如 赋值 或者拼接

海上将军 | 园豆:306 (菜鸟二级) | 2013-02-17 13:55
$("#trData").html(data);

这么写控制器里面数据查询到了但是界面上不显示,写的对吗???

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 13:59

@独孤雄: 错了 你源码有吗 发到enpos@qq.com 我帮你调下

支持(0) 反对(0) 海上将军 | 园豆:306 (菜鸟二级) | 2013-02-17 14:03
0

不处理 data 是不会刷新的

既然用Razor,为什么要使用 $.ajax 呢, 不觉得设计的思路需要调整一下

Yu | 园豆:12944 (专家六级) | 2013-02-17 15:27

噢!!那这里我改怎么做,我还是第一次用这个mvc 视图,不是很理解!!

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-17 15:36

@独孤雄: 不要使用$.ajax,用表单提交的方式,定义个ACTION接收,然后返回table需要的MODEL数据,返回的数据应该是List<PCB_Information>吧

支持(0) 反对(0) Yu | 园豆:12944 (专家六级) | 2013-02-17 22:33
View:

@model List<CH.SZ.Netting.Domain.Entities.PCB_Information>
@{
    ViewBag.Title = "";
}

@using (Html.BeginForm())
{
       
    <select id="select" name="select">
        ...
    </select>

    <input id="txt" name="txt" type="text" value="" />

    <input type="submit" value="Query" />
}

@foreach (CH.SZ.Netting.Domain.Entities.PCB_Information item in Model)
{
    ...//table output
} 

===================

Controller:

[HttpPost]
public ActionResult QueryTableData(string select,string txt)
{
    List<CH.SZ.Netting.Domain.Entities.PCB_Information> items=new List<CH.SZ.Netting.Domain.Entities.PCB_Information>();

    ...// create items

    return Vliew(items);
}

 

@Yu: 

支持(0) 反对(0) Yu | 园豆:12944 (专家六级) | 2013-02-19 13:26
0
success: function (data) {
                 
                    
                }
你ajax请求成功的方法都没写呢,这里就用js操作DOM来改变界面啊
dotnetgeek | 园豆:482 (菜鸟二级) | 2013-02-18 14:04

??????还是拼啊!!!有没有razor的别的方式做这样的操作,跪求

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-18 14:18
0

asp.net mvc不是默认带了jquery ajax么?

三桂 | 园豆:3565 (老鸟四级) | 2013-02-19 12:58

哦  这个我知道,暂时没找到一个解决办法

支持(0) 反对(0) 独孤雄 | 园豆:165 (初学一级) | 2013-02-19 13:16

@独孤雄: 

在博客园随便搜索下(asp.net mvc ajax)就会有很多参考吧?

http://www.cnblogs.com/cnblogsfans/archive/2009/01/10/1373107.html

支持(0) 反对(0) 三桂 | 园豆:3565 (老鸟四级) | 2013-02-19 13:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册