【问题标题】:Use js variables in C# Webform(ASP.net)在 C# Webform(ASP.net) 中使用 js 变量
【发布时间】:2017-07-04 20:04:31
【问题描述】:

我在我的 JS 文件中创建了一些变量,并在 Xhtml 代码中将其链接到我的 webform,我的 js 代码如下:

var access_key = 'my key';
var email_address;
var valid_format,smtp_check,disposable,mxfound,Urole;
// verify email address via AJAX call
function verify()
{
$.ajax({
url: 'domain/api/check?access_key=' + access_key + '&email=' + 
email_address,
dataType: 'jsonp',
success: function validate(json) {
valid_format = json.valid_format ;
smtp_check = json.smtp_check ;
disposable = json.disposable;
mxfound = json.mxfound ;
Urole = json.role ;
}
});
}

我需要使用 Signup.aspx.cp 文件中 js 部分的变量(valid_format、smtp_check、disposable、mxfound、Urole)。

注意:我已链接myJs.js 到 Signup.aspx 文件。(myJs 不是原始名称,仅用于示例目的)

【问题讨论】:

  • 您是在问如何从您的 api 方法返回一个 json 对象吗?
  • 不,我想使用将 json 对象值存储到我页面的 c# 部分的变量。 变量:valid_format、smtp_check、disposable、mxfound、Urole我需要使用这些变量。

标签: javascript c# asp.net webforms


【解决方案1】:

这些最简单的做法可能是添加一些 HiddenField 服务器控件并将您的值放入客户端,然后您可以在下次回发时在 C# 代码中引用 HiddenField 控件。

例如做valid_format值:

<asp:HiddenField runat="server" ID="hdnValidFormat" ClientIDMode="Static" />

然后使用 jQuery 在你的成功回调中设置值:

$('#hdnValidFormat').val(json.valid_format); 

然后您可以像往常一样在 C# 代码中引用 hdnValidFormat.Value。

然后对其他变量执行相同的操作。

注意事项:

  • 确保您已为 HiddenField 控件启用 ViewState,否则这些值不会在回发中保留。
  • 如果您不能/不想在 HiddenField 控件上使用 ClientIDMode="Static",则可以使用默认动态生成的 ID,您只需使用以下服务器代码引用它们:

    $('#&lt;%=hdnValidFormat.ClientID%&gt;').val(...);

  • 请注意不要使用可能会被操纵并危及应用安全性的值来执行此操作。所有人所要做的就是编辑标记,然后他们可以在其中放置他们想要的任何值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-02
    • 2019-09-07
    • 1970-01-01
    相关资源
    最近更新 更多