Javascript 变量看起来像是被赋值了,但实际上并没有

标签 javascript asp.net

我的 C# 代码背后有一些 RegisterStartupScript,当面板打开时,它会为面板的某些控件的某些字段分配一些值。

面板中的控件显示好像它们的值已被正确分配,但实际上它们就像从未分配过一样工作,我已经在我的 aspx 页面的动态 View 中检查了这一点。

例如:这是启动脚本之一的指令:document.getElementById("MainContent_Textbox1215").value ='CALL CENTER';,事实上,当我在屏幕上看到该文本框时,它会显示调用中心。

但与此同时,这才是代码中真正的内容,以及应用程序为将来的操作解释的内容,取自该特定页面的动态 View 。

<input name="ctl00$MainContent$Textbox1215" type="text" id="MainContent_Textbox1215" class="listBox" style="width:50%;" />

单选按钮也会发生类似的事情,所以即使在屏幕上看起来好像被选中了,真正被选中的是定义为默认的那个,并且可能适用于所有类型的控件。

这就像一个真正的值从未分配给文本框或单选按钮......这是我在编程中见过的最奇怪的事情,希望你能指导我该怎么做。

最佳答案

甚至我在使用 javascript 和 dotnet 时也遇到过这样的问题。

我能说的是,您可能没有指定 Value 属性 你 html 中的文本框,这就是它没有在你的动态中显示它的原因 aspx 页面,但值已分配,您可以在任何需要的地方使用它。 这你可以验证,即使是 ha 纯 html 页面,我也面临同样的问题 事物。但是,如果您为 Value 属性指定了一些值,您将看到 html 源代码中的旧值,但如果您尝试使用 javascript 访问它,它将 向您展示新的值(value)。我无法弄清楚这种行为背后的原因,但是 这就是我所经历的。

关于Javascript 变量看起来像是被赋值了,但实际上并没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30505425/

相关文章:

javascript - 如果执行某些 php 脚本则刷新页面

javascript - 未处理的拒绝 SequelizeDatabaseError : column "foo_bar" of relation "bar" already exists

c# - 使用事件目录 API DirectoryEntry 进行身份验证

c# - 如何使用 ASP.NET C# 包含 CRUD(而非 MVC)创建 Jquery FileUpload

javascript - Javascript Falling Rocks 游戏中的碰撞检测

javascript - 为什么在第二次更改事件后我的文本没有添加到文本区域?

javascript - Angular 2 - 未捕获( promise ): RangeError: Maximum call stack size exceeded

asp.net - 动态编译的文件在 .NET 中使用 csc.exe 吗?

c# - MySQL与asp.net的控制

asp.net - 某些 HTTP 动词真的天生就不如其他动词安全吗?