我正在使用ASP.Net
在C#
中开发一个Web应用程序。在我的代码中有一个aspx页面和相关的JQuery
代码在一个单独的js file
在我的aspx页面中我有代码示例如下
<div id="areaHiddenField">
<asp:HiddenField ID="hfESFullName" runat="server" />
<asp:HiddenField ID="hfESTitle" runat="server" />
<asp:HiddenField ID="hfESPhoneNumber" runat="server" />
<asp:HiddenField ID="hfESOfficePhoneNumber" runat="server" />
<asp:HiddenField ID="hfESMailID" runat="server" />
<asp:HiddenField ID="hfESWebsite" runat="server" />
<asp:HiddenField ID="hfESAddress1" runat="server" />
<asp:HiddenField ID="hfESAddress2" runat="server" />
<asp:HiddenField ID="hfESDisclaimer" runat="server" />
<asp:HiddenField ID="hfESPhoto" runat="server" />
<asp:HiddenField ID="hfESLogo" runat="server" />
<asp:HiddenField ID="hfESDesignation1" runat="server" />
<asp:HiddenField ID="hfESDesignation2" runat="server" />
</div>
现在我想对所有隐藏字段执行一些操作。在单独的.js文件中,我使用以下代码
$("#areaHiddenField").find('[id^="hf"]').each(function () {
alert("hi");
});
但我没有从代码中得到任何回复。请帮帮我。
答案 0 :(得分:4)
试试这个
$("#areaHiddenField").find("input[type='hidden']").each(function(){
alert($(this).attr("id"));
});
或强>
如果您希望相同的代码正常运行,请将ClientIdMode = "static"
添加到所有HiddenFields
。
答案 1 :(得分:0)
尝试:
$("#areaHiddenField input[type='hidden']").each(function () {
alert("hi");
});
或
$("#areaHiddenField").find('input[id^=hf]').each(function () {
alert("hi");
});
如果您的隐藏元素是直接子元素,那么最好使用children()
$("#areaHiddenField").children('input[id^=hs]').each(function () {
alert("hi");
});
答案 2 :(得分:0)
只需在脚本上方添加 $(document).ready(function()
$(document).ready(function () {
$("#areaHiddenField").find("[id^='hf']").each(function () {
alert("hi");
});
});
它会起作用,我想你会错过它,否则它应该有效,因为你的脚本没有任何问题。
答案 3 :(得分:0)
可能是隐藏字段ID正在改变,因为它是服务器端而且它不是从hf开始..如果你有母版页然后它从ct100开始,那么检查隐藏字段id从哪个字开始...我签到我的页面与母版页完美配合...
<div id="areaHiddenField">
<asp:HiddenField ID="hfESFullName" runat="server" />
<asp:HiddenField ID="hfESTitle" runat="server" />
<asp:HiddenField ID="hfESPhoneNumber" runat="server" />
<asp:HiddenField ID="hfESOfficePhoneNumber" runat="server" />
<asp:HiddenField ID="hfESMailID" runat="server" />
<asp:HiddenField ID="hfESWebsite" runat="server" />
<asp:HiddenField ID="hfESAddress1" runat="server" />
<asp:HiddenField ID="hfESAddress2" runat="server" />
<asp:HiddenField ID="hfESDisclaimer" runat="server" />
<asp:HiddenField ID="hfESPhoto" runat="server" />
<asp:HiddenField ID="hfESLogo" runat="server" />
<asp:HiddenField ID="hfESDesignation1" runat="server" />
<asp:HiddenField ID="hfESDesignation2" runat="server" />
</div>
<script type="text/javascript">
$("#areaHiddenField").find('[ID^="ctl00_ContentPlaceHolder1_"]').each(function () {debugger
var controlName = $(this).attr("ID");
var get_id=controlName.replace("ctl00_ContentPlaceHolder1_","");
alert(get_id);
var set_val=document.getElementById(""+ controlName +"");
if(get_id=="hfESFullName")
{
set_val.value="xyz";
}
else if(get_id=="hfESTitle")
{
set_val.value="abc";
}