У меня есть сайт asp.net, в котором у меня есть два файла, которые нужно поговорить друг с другом. Ниже приведен фрагмент кода из моего файла footer.ascx. Мне нужно отправить строку в файл MobileAd.ascx.cs. Ниже мой соответствующий код из каждого файла.Отправка значения ASP HiddenField через другой элемент управления ASP
Я считаю, что все настроено правильно. Я просто понятия не имею, как правильно передать значение. Значение, которое не пересылается должным образом SendA.value
Вот отрывок из footer.ascx
<%@ Register TagPrefix="PSG" TagName="MobileAd" Src="~/MobileAd.ascx" %>
<asp:HiddenField runat="server" ID="SendA" value="" />
<script>
if (/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ||
(/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.platform)))
{
document.getElementById('<%=SendA.ClientID%>').value = "mobile";
}
else
{
document.getElementById('<%=SendA.ClientID%>').value = "other";
}
</script>
<div class="bottom" align="center">
<PSG:MobileAd ID="MobileAd" runat="server" AdType = <%=SendA.value%> />
</div>
Вот приемный конец на MobileAd.ascx.cs
private string _AdType;
public string AdType
{
set
{
this._AdType = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
string html = null;
if (!string.IsNullOrEmpty(_AdType))
{
if (_AdType == "mobile")
{
html = "Mobile Ad Code";
}
else
{
html = "Tablet or Desktop Ad Code";
}
divHtml.InnerHtml = html;
}
Спасибо, это работает из моих тестов до сих пор! У меня еще не было возможности протестировать на планшете, но у меня пальцы скрещены. –