2013-04-08 97 views
0

以下是我的HTML錯誤控制器

<input type="text" name="name" id="name" /> 
<input type="text" name="age" id="age" /> 
<select id="selectQualification"> 
      <option value="Select Qualification">Select Qualification</option> 
       <option value="Bachelor">Bachelor</option> 
       <option value="Graduate">Graduate</option> 
       <option value="Master">Master</option> 
       <option value="PostGraduate">Post Graduate</option> 
       <option value="M.Phile">M.Phil</option> 
       <option value="Ph.D">Ph.D</option> 
       <option value="Other">Other</option> 
     </select> 
<input type="button" id="button" value="Submit"/> 

這是JS

<script type="text/javascript"> 
     $(document).ready(function() { 
      $("#button").click(function() { 
       var personalInfo = new Object(); 
       personalInfo.name = $("#name").val(); 
       personalInfo.age=$("#age").val(); 
       personalInfo.qualification=$("#selectQualification").val(); 

       $.ajax({ 
        type: "GET", 
        url: "@Url.Action("SubmitForm","Account")", 
        data: { name: $("#name").val(), fatherName: $("#fatherName").val(), selectQualification: $("#selectQualification").val() }, 
        success: function() { alert("a"); } 
      }); 
      }); 
     }); 

     </script> 

而且下面是控制器方法

public void AcceptPersonalInfo(string name,string fatherName,string qualification) 
     { 

     } 

問題是,在AcceptPersonalInfo()方法,資格是空值。請幫助,爲什麼會發生這種情況。

+0

其他屬性即名稱和父親的名字值順利通過。但是資格值爲空 – 2013-04-08 07:43:38

回答

2

由於您發送的值爲selectQualification,控制器期望的值爲qualification

所以要麼改變

public void AcceptPersonalInfo(string name,string fatherName,string qualification) 
{} 

public void AcceptPersonalInfo(string name,string fatherName,string selectQualification) 
{} 

或更改

data: { name: $("#name").val(), fatherName: $("#fatherName").val(), selectQualification: $("#selectQualification").val() }, 

data: { name: $("#name").val(), fatherName: $("#fatherName").val(), qualification: $("#selectQualification").val() }, 
1

您可以使用BindAttribute.Prefix屬性。

例如:

public void AcceptPersonalInfo(string name,string fatherName, 
        [Bind(Prefix = "selectQualification")] string qualification){}