我有一些代码来设置隐藏字段的值,这样我就可以在后面的代码中访问它,但在后面的代码中该值始终为空。正在设置 effectiveDate
的值,但我看起来不像正在设置隐藏字段属性 Value
。
<input id="appEffectiveDate" type="text" />
<label id="effectiveDateLabel" for="appEffectiveDate">App Effective Date</label>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<asp:HiddenField ID="appEffectiveDateToSetForUserRole" runat="server" Value="" Visible="false" />
<script>
$(function () {
var SelectedDates = {};
$('#appEffectiveDate').datepicker({
beforeShowDay: function (date) {
var Highlight = SelectedDates[date];
if (Highlight) {
return [true, "Highlighted", Highlight];
}
else {
return [true, '', ''];
}
}
});
$("#effectiveDateLabel").hide();
$("#appEffectiveDate").hide();
$('input[value="85"]').click(function () {
if($(this).is(':checked'))
{
$("#effectiveDateLabel").show();
$("#appEffectiveDate").show();
}
});
$("#appEffectiveDate").change(function () {
var effectiveDate = $("#appEffectiveDate").val();
$(":asp(appEffectiveDateToSetForUserRole)").prop('value', effectiveDate);
});
});
</script>
在后面的代码中,隐藏字段的值为空:
if (!string.IsNullOrEmpty(appEffectiveDateToSetForUserRole.Value))
{
// this is never called because .Value is empty
}
最佳答案
如果 Visible
设置为 false
,控件将不会在标记中由 ASP.NET 呈现,这意味着 jQuery 将无法找到它,因为它不存在。只需删除 visible=false 部分。它会保持隐藏状态。
关于c# - 使用 jquery 在 asp.net winforms 中设置隐藏字段的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29833584/