将asp.net文字对象传递给javascript

时间:2013-11-12 14:59:25

标签: javascript asp.net literals

我在页面上有几个asp.net文字,如下所示:

<asp:Literal ID="litEmailInvestigatingHealthOfficer" runat="server"></asp:Literal>

当从其他页面填写相应的文本框时,它会遍历javascript函数并调用js函数:validateEmail(idNo,theliteralobject);

我已经编写了一个对web方法的ajax调用,并且在那个web方法中,我想要调用一个现有的asp.net函数,该函数需要一个雇员对象和一个文字对象。

        function validateEmail(idNo, literalCtl) {
         $.ajax({
            type: "POST",
            url: "RespPerson.aspx/validateEmails",
            dataType: "json",
            data: "{empID: " + idNo + ",literal:" + literalCtl + "}",
            contentType: "application/json",
            success: function (data) {
                alert('Im done');
            },
            error: function (xhr) {
                alert(xhr.responseText);
            }
        });
    }

是否可以将asp.net文字对象传递给Javascript然后传递给Web方法?如果我尝试只指定对象,它会在js调用中放入System.Web.UI.WebControls.Literal并表示未定义。

1 个答案:

答案 0 :(得分:0)

Literal不代表任何HTML标签。它在html中渲染的内容就是你在它的Text属性中添加的内容。

litEmailInvestigatingHealthOfficer.Text = "some text";

<div>
<asp:Literal ID="litEmailInvestigatingHealthOfficer" runat="server" />
</div>

html output:
<div>
some text
</div>

,而

lblEmailInvestigatingHealthOfficer.Text = "some text";

<div>
<asp:Label ID="lblEmailInvestigatingHealthOfficer" runat="server" />
</div>

html output:
<div>
<span id='lblEmailInvestigatingHealthOfficer'>some text</span>
</div>