嗨,您可以在我的html代码中看到这个DDL:
<select class="form-control" name="RoleId" id="RoleId">
<option value="1">User</option>
<option value="2">Admin</option>
<option value="3">Security</option>
</select>
我用以下代码调用我的json操作控制程序:
<script type="text/javascript">
$(document).ready(function () {
//Dropdownlist Selectedchange event
$("#RoleId").change(function () {
$.ajax({
type: 'POST',
url: '@Url.Action("GetRolePolicy", "RolePolicy", new { area= "Admin" })',
dataType: 'json',
data: { RoleName: $("#RoleId").val() },
success: function (data) {
var cusid_ele = document.getElementsByClassName('toggle');
我需要组合框中所选项目的值,但这行代码
{RoleName:$(“#RoleId”)。val()},
将null返回到我在控制器中的操作。为什么?
public JsonResult GetRolePolicy(string RoleId)
{
int RoleIdConverted = int.Parse(RoleId);
RolePolicy _RolePolocy = new RolePolicy();
}
答案 0 :(得分:1)
您要发送一个名为RoleName
的参数:
data: { RoleName: $("#RoleId").val() }
但是需要一个名为RoleId
的参数:
public JsonResult GetRolePolicy(string RoleId)
参数名称必须匹配。重命名其中之一。
答案 1 :(得分:1)
您的操作参数名称应为RoleName
public JsonResult GetRolePolicy(string RoleName)