我想使用在 javascript
中的 c# 类中创建的对象。我知道我可以使用 json 库将我的服务器端对象转换为 JSON
对象,以便它可以在 javascript
中使用。
我已经为此下载了 Newtonsoft.Json
库。我有以下 aspx.cs
页面代码
using Newtonsoft.Json;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
product p = new product();
p.ProductId = 1;
p.productName = "t-shirt";
}
public class product
{
public int ProductId { get; set; }
public string productName { get; set; }
}
}
对于 aspx
页面,我使用以下 javascript
代码来访问该 p 对象值。
<%@ Import Namespace="Newtonsoft.Json" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script type="text/javascript">
var jsobject = <%= JsonConvert.SerializeObject(p) %>;
function myfunction (){
//work with object
alert('Hi');
}
</script>
</asp:Content>
当我尝试构建它时,它会生成以下异常
名称“p”在当前上下文中不存在
我只想在我的 javascript 代码中使用 p id 和名称。
我最初引用了 this answer
最佳答案
您的变量 p 的范围不正确。
public partial class _Default : System.Web.UI.Page
{
public product p;
protected void Page_Load(object sender, EventArgs e)
{
p = new product();
p.ProductId = 1;
p.productName = "t-shirt";
}
public class product
{
public int ProductId { get; set; }
public string productName { get; set; }
}
}
关于c# - 在 javascript 中使用 c# 类对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16685226/