ASP.NET hiddenField 使用 ClientID 获取值,就像使用 javascript 使用母版页一样
ASP.NET hiddenField get value using ClientID as using master pages using javascript
我在 .NET 中使用母版页,我发现我不能使用 ID 来检索值,因为 .NET 添加了它自己的 ID 值。看到这篇很有帮助的文章! Can't get JQuery to work in Master Page
所以我仔细检查并向所有相关字段添加了 classes,但是当涉及到我的隐藏字段时我 运行 遇到了问题 <asp:HiddenField ID="softwareSelected" value="" runat="server" />
我无法在其中添加 class,经过更多谷歌搜索后,我看到人们通过调用 clientID
来修复它。
所以我尝试了这个:
var myHidden = document.getElementById('<%= softwareSelected.ClientID %>');
console.log(myHidden.value);
alert(myHidden.value);
使用这个答案:ASP.NET set hiddenfield a value in Javascript
但是它没有返回任何值,只是一个空警报和 console.log。
有人能给我指出正确的方向吗?这让我抓狂!
编辑
我在代码中将其设置得更高:
<asp:HiddenField ID="softwareSelected" ClientIDMode="static" value="test" runat="server" />
通过将 ClientIDMode 设置为静态,我回来了 undefined
然后我尝试像这样覆盖这个值:
var myHidden = document.getElementById('<%= softwareSelected.ClientID %>').value;
console.log(myHidden.value);
myHidden.value = "tester123";
console.log(myHidden.value);
但我仍然得到 undefined
:/
ASPX
<asp:HiddenField ID="softwareSelected" ClientIDMode="static" value="Hello" runat="server" />
JS
var myHidden = document.getElementById('softwareSelected');
console.log(myHidden.value);
alert(myHidden.value);
我测试了它并为我工作。我认为您的 javascript 代码在外部文件中。如果这是你必须知道
<%= softwareSelected.ClientID %>
仅适用于您的 .aspx 文件。
如果您的 js 脚本在 .aspx 文件中,请测试一下:
var myHidden = document.getElementById('JsContent_ softwareSelected').value;
如果这不起作用,您必须搜索其他地方的问题。
我在 .NET 中使用母版页,我发现我不能使用 ID 来检索值,因为 .NET 添加了它自己的 ID 值。看到这篇很有帮助的文章! Can't get JQuery to work in Master Page
所以我仔细检查并向所有相关字段添加了 classes,但是当涉及到我的隐藏字段时我 运行 遇到了问题 <asp:HiddenField ID="softwareSelected" value="" runat="server" />
我无法在其中添加 class,经过更多谷歌搜索后,我看到人们通过调用 clientID
来修复它。
所以我尝试了这个:
var myHidden = document.getElementById('<%= softwareSelected.ClientID %>');
console.log(myHidden.value);
alert(myHidden.value);
使用这个答案:ASP.NET set hiddenfield a value in Javascript
但是它没有返回任何值,只是一个空警报和 console.log。
有人能给我指出正确的方向吗?这让我抓狂!
编辑
我在代码中将其设置得更高:
<asp:HiddenField ID="softwareSelected" ClientIDMode="static" value="test" runat="server" />
通过将 ClientIDMode 设置为静态,我回来了 undefined
然后我尝试像这样覆盖这个值:
var myHidden = document.getElementById('<%= softwareSelected.ClientID %>').value;
console.log(myHidden.value);
myHidden.value = "tester123";
console.log(myHidden.value);
但我仍然得到 undefined
:/
ASPX
<asp:HiddenField ID="softwareSelected" ClientIDMode="static" value="Hello" runat="server" />
JS
var myHidden = document.getElementById('softwareSelected');
console.log(myHidden.value);
alert(myHidden.value);
我测试了它并为我工作。我认为您的 javascript 代码在外部文件中。如果这是你必须知道
<%= softwareSelected.ClientID %>
仅适用于您的 .aspx 文件。
如果您的 js 脚本在 .aspx 文件中,请测试一下:
var myHidden = document.getElementById('JsContent_ softwareSelected').value;
如果这不起作用,您必须搜索其他地方的问题。