5

我有一个具有以下定义的模型:

namespace ESimSolChemical.Models
{

    public class Employee
    {        
        public int EmployeeID{ get; set; }
        public string EmployeeName{ get; set; }
        public string Age{ get; set; }
        public string Address{ get; set; }

    }

我有以下 JavaScript:

<script type="text/javascript">
    $(function () {
        $('#btnEmployeePiker').click(function () {
            var oParameter = new Object();
            oParameter.MultipleReturn = false;
            var oReturnObject = window.showModalDialog('/Employee/EmployeePiker/', oParameter, 'dialogHeight:470px;dialogWidth:550px;dialogLeft:400;dialogTop:100;center:yes;resizable:no;status:no;scroll:no');           
        });
    });
</script>

我的 JavascriptoReturnObject包含两个属性,例如:

oReturnObject.EmployeeID;
oReturnObject.EmployeeName;

现在我想分配:

@Model.employeeID=  oReturnObject.EmployeeID;

我怎样才能完成这项任务?

4

3 回答 3

9

You cannot set server side values with Javascript. You could bind these values to input fields like textboxes or hidden fields and then use Javascript to modify these values of these input fields.

Take a look at these articles, it might help you out:

于 2012-08-08T06:48:01.897 回答
0

你不能像在 JavaScript 中那样执行服务器端代码。

您需要以某种方式将更新的值发布回服务器以处理它们。

看看KnockoutJS,它使这样的事情变得非常容易。基本上,您只需将客户端的模型类序列化为 JavaScript 对象,使用它直到您决定将其保存回来,然后将其作为 JSON 发送到服务器,这将允许您拥有这样的操作方法

public ActionResult UpdateEmployee(Employee employee)
{
    // Update the database...
    //
}

上面链接的页面有很多教程可供开始。

于 2012-08-08T06:40:23.730 回答
0

This is what I have used:

@{
   @Convert.ToString("var refID = " + @Model.RefID + ";alert(refID);")
}

and its working fine.

于 2016-04-22T21:40:58.523 回答