ajax
  • asp.net-mvc
  • asp.net-mvc-3
  • jquery
  • query-string
  • 2013-03-19 33 views 0 likes 
    0

    我有一个简单的ASP MVC3 @Html.TextBox,我使用输入搜索条件。但是,我需要将该值作为查询字符串追加到Ajax调用中的URL中。我将如何去做这件事?下面是该视图中的HTML:通ASP MVC3文本框的值,以Ajax调用

    <div class="editor-field"> 
        @Html.TextBox("searchString") 
        <span onclick='GetCompName(searchString);'> 
         <input type="image" src="@Url.Content("~/Content/Images/Filter.bmp")" alt="Filter" /> 
        </span> 
    </div> 
    

    ,这里是阿贾克斯

    function GetCompName(searchString) { 
        var request = $.ajax({ 
         type: 'POST', 
         url: 'http://quahildy01/OrganizationData.svc/AccountSet?$select=AccountId,Name,neu_UniqueId&$filter=startswith(Name,' + searchString + ')',    
         dataType: 'html', 
         success: function (data) { 
          alert(data); 
         }, 
         error: function (data) { 
          alert("Unable to process your resquest at this time."); 
         } 
        }); 
    } 
    

    我也将要输出返回值到另一个文本框。如果有人知道如何做,那也会很有帮助。谢谢!

    回答

    3

    与您的代码的基本问题是onclick='GetCompName(searchString);的搜索字符串会一直字面意思是“serchString”,则必须输入指定的基础参数的值,这样$('.searchbox').val()

    保持你的JavaScript无碍。

    HTML代码的事件跨度

    <div class="editor-field"> 
        @Html.TextBox("searchString", null, new { @class = "serachbox" }) 
        <span class="searchbox-trigger"> 
         <input type="image" src="@Url.Content("~/Content/Images/Filter.bmp")" alt="Filter" /> 
        </span> 
    </div> 
    

    集去处理单击

    $(document).ready(function() { 
        $('.searchbox-trigger').click(GetProgramDetails); 
    }); 
    

    和你的Ajax请求

    function GetProgramDetails() { 
        var request = $.ajax({ 
         type: 'POST', 
         url: 'http://quahildy01/OrganizationData.svc/AccountSet?$select=AccountId,Name,neu_UniqueId&$filter=startswith(Name,' + $('.searchbox').val() + ')',    
         dataType: 'html', 
         success: function (data) { 
          alert(data); 
         }, 
         error: function (data) { 
          alert("Unable to process your resquest at this time."); 
         } 
        }); 
    } 
    
    +0

    此行似乎是抛出一个错误:'@Html .TextBox( “搜索字符串” 没什么,新与{的.class = “搜索框”})' – NealR 2013-03-19 16:14:45

    +0

    VS不喜欢'Nothing',或'新With'关键字(?) – NealR 2013-03-19 16:15:17

    +0

    您能详细解释答案的那一部分吗?相对较新的ASP MVC,并没有看过之前的语法。 – NealR 2013-03-19 16:25:25

    相关问题