如何在C#用户控件中从jQuery中检索一个值?

3

我在外部JavaScript的ToDo函数中有一个visitorID变量。

我想在用户控件中分配它的值。前端代码:

<asp:HiddenField ID="hidVisitorID" runat="server" Value="-1"/>

<script type="text/javascript">

$j('#<%= hidVisitorID.ClientID %>').val(ToDo.visitorID);

</script>

在后端中,hidVisitorID.Value的值为null(或在这种情况下为-1)。我该如何将jquery变量的值分配给hidVisitorID?

你能具体说明一下你想通过这样做实现什么吗?在目前的情况下,只需要一个普通的HTML隐藏输入框可能就足够了,但我不确定你想用ASP.NET控件做什么。 - Andrew
我认为你把前端和后端搞混了……但是从你的问题中我不能确定。 - Brian Genisio
抱歉,我现在会更新一个问题。 - Stewie Griffin
1
ToDo.visitorID来自哪里?你确定没有其他JavaScript错误吗? - Nick Craver
@Andrew,我需要将ToDo JavaScript中存在的值分配给用户控件中的变量。 - Stewie Griffin
Todo.visitorID来自ToDo.js(jquery变量)。该文件没有错误。 - Stewie Griffin
1个回答

0

尝试这段代码:

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="my_TO_DO.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        alert('my todo varname is: ' + ToDo.variableName);
        $('#<%= hidVisitorID.ClientID %>').val("foobar");
    });
</script>


 <asp:HiddenField ID="hidVisitorID" runat="server" Value="-1"/>

 <asp:Button Text="sub" runat="server" onclick="Click" />

当您点击按钮时,它将会回传。

protected void Click(object sender, EventArgs e)
{
    string valFromHidden = hidVisitorID.Value;
   //valFromHidden is now foobar
}    

确保你的 jQuery 引用在其他 .js 引用之上。


这会起作用。但是我无法让我的变量从ToDo.js中代替“foobar”起作用。我放置了.val(ToDo.variableName),它无法识别ToDo。 - Stewie Griffin
@显示:请查看此答案的更新。Alert()和放置各种.js脚本标签。 - p.campbell
我有一种感觉,应该重构我的JavaScript代码以使其正常工作...因为某些值是在后来的加载事件中分配的。无论如何,感谢您的回答。 - Stewie Griffin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接