2014-02-11 95 views
0

我已經使用這個腳本從數據庫檢索數據到文本框。它會提醒網址,但不會檢索或顯示文本框中的任何內容。這裏是在視圖中使用我的腳本...爲什麼文本框的值不顯示任何內容?

@section Scripts { 
    @Scripts.Render("~/bundles/jqueryui") 
    @Scripts.Render("~/bundles/jqueryval") 
    @Styles.Render("~/Content/themes/base/css") 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      $('#ItemId').blur(function() { 
       var v = $('#ItemId').val(); 
       var url = "RawMaterials/Search/" + v; 
       alert("Testing syetem:"+url); 
        $.getJSON(url, null, function (data, status) { 

        $.each(data, function (index, C) { 
         $("#ItemName").val(C.ItemName); 
         $("#MeasuringUnit").val(C.MeasuringUnit); 
         $("#Rate").val(C.Rate); 
         $("#Quantity").val(C.Quantity); 
         $("#BagSz").val(C.BagSz); 
        }); 
       }); 
      }); 

     }); 

    </script> 
} 

器和控制器......

public JsonResult Search(string id = null) 
     { 
      if (id != null) 
      { 
       var sresult = db.Query<tblItem>("Where ItemId=" + id).ToList<tblItem>(); 
       return Json(sresult, JsonRequestBehavior.AllowGet); 
      } 
      else 
       return null; 
     } 
+0

難道這是一個錯字或代碼 - $ .getjeson? –

+0

在你做任何事之前。更改db.Query (「Where ItemId =」+ id)與捲曲護腕一起使用...「Where ItemId = {0}」,id。 這是一個主要的安全漏洞與SQL注入 –

+0

我已經解決了這個問題。編輯此行僅var url =「/ RawMaterials/Search /」+ v; – MNAH

回答

0

看來你在這一行

$.getjeson(url, null, function (data, status); 

j可以資本有一些問題在$ .getjson

改變它作爲

$.getJson(url, null, function (data, status); 
+0

改變它但沒有發生相同的結果... – MNAH

0
<script type="text/javascript"> 
      $(document).ready(function() { 
       $('#ItemId').blur(function() { 
        var v = $('#ItemId').val(); 
        var url = '@Url.Action("Search","RawMaterials")'; 
        alert("Testing syetem:"+url); 
        $.ajax({ 
         type:"POST", 
         url : url, 
         data:{id:v}, 
         success:function(data){ 
         // your code 
         } 
        }); 
       }); 

      }); 

     </script> 
相關問題