c# - 将值从 ASP.NET 页面发布到 C#

标签 c# javascript asp.net screen-resolution

我有一个 JavaScript 函数如下:

function getWindowSize() {
   test.value = $(window).width();
   test2.value = $(window).height();
}

window.onresize = getWindowSize;

在 ASP.NET 页面中:

<input type="text" id="test2" value="Test"/>  
<input type="text" id="test" value="Test"/> 

这会在屏幕尺寸改变时填充字段。当我将页面元素设置为具有 runat="server" 时,它们不会填充屏幕大小并且无法在服务器端捕获它。

有什么建议吗?

最佳答案

如果你有服务器标签,你需要使用ClientID。您目前没有使用 getElementById,但您应该获取 DOM 元素以获得更好的浏览器兼容性。如果您有框架 4 及更高版本,您可以使用 ClientIDMode并且不使用 ClientID

Javascript

function getWindowSize() {
       document.getElementById('<%= test.ClientID %>').value = $(window).width();
       document.getElementById('<%= test2.ClientID %>').value = $(window).height();
}
window.onresize = getWindowSize;

HTML

<input type="text" id="test2" value="Test" runat="server" />  
<input type="text" id="test" value="Test" runat="server" /> 

关于c# - 将值从 ASP.NET 页面发布到 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20968208/

相关文章:

c# - 如何在 C# 中将字节发送到串行设备?

javascript - 如何将Set转换为带空格的字符串?

css - 样式适用于 Firefox 和 IE8,但不适用于 Chrome(居中 vs text-align=left)

html - Email Blast HTML 大小问题

c# - 在C#中从Youtube读取ajax响应

c# - 如何获取 System.Xml.Linq.XNode 的名称?

c#BeginUpdateResource 收藏

javascript - NodeJS Express - GET/POST/PATCH/DELETE 幕后的区别

javascript - jquery $.each 或 javascript for 循环

c# - 找不到 WebClient