javascript - html 输入显示不同的文本到它发布的值

标签 javascript jquery html codeigniter input

我感觉自己真的很愚蠢,不确定是否做了一些非常愚蠢的事情......所以请提前原谅。

我有以下 HTML:

<input type="text" value="0" name="pcscubes" id="pcscubes">

我有以下 jquery 语法:

var cubes=123.2;
$("#pcscubes1").val(cubes);
var test=$("#pcscubes1").val();
alert(test);

jquery执行时,输入框会显示123.2,alert为123.2。

如果你检查 html 对象,值仍然是 0?

因此输入的显示与实际值不同。所以当我提交此表单时,它会显示 0 而不是 123.2

现在我已经使用这种语法构建了一个完整的网络应用程序并且运行良好。今天它只是停止工作?我重新启动了浏览器,检查了正在运行的旧代码,注销并重新登录,但它仍然执行相同的操作。

web 应用程序显然在这个表单上加载了 jquery 和 jquery ui。

使用代码点火器?

当我为如此愚蠢的事情而苦思冥想时有什么想法....

出于兴趣,我创建了下面的 fiddle ,它也在做同样的事情吗? http://jsfiddle.net/49nqU/

enter image description here

为什么显示123.2时数值为0?

一如既往的感谢

最佳答案

这是属性与属性的对比。

您在检查器中看到的是 value 属性,当您以编程方式更新字段的 value 时,它不会更新属性(property)。

不要在意 DOM 检查器说的是什么;它只会显示页面加载时的值(除非您显式更改字段的值 attribute 而不是像 jQuery 的 val() 那样,它的 属性。)

进一步阅读:http://jquery-howto.blogspot.co.uk/2011/06/html-difference-between-attribute-and.html

一些属性与对应的属性密切相关。也就是说,更新属性也会更新属性。例如,class 属性及其对应的 className 属性就是这种情况。但是,value 是不同的;更新属性不会更新属性(但是,只是为了进一步混淆,更新属性更新属性!)

关于javascript - html 输入显示不同的文本到它发布的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25061547/

相关文章:

javascript - 在 jQuery 中动态创建表

jquery - 选择/取消选择所有按钮复选框不起作用

javascript - 平滑 jQuery 动画

jquery - 使用向上/向下箭头选择 div

javascript - jcors-loader.js 在 IE7 中不起作用

javascript - jQuery 在验证时触发转换

php - 为什么我的 jQuery AJAX 调用会在浏览器中打开响应?

javascript - 在asp.net aspx页面上可以正常调用javascript混淆代码吗?

javascript - 如何使跳转页面对搜索引擎友好

jquery - 更高效的 jQuery 悬停到淡入/淡出多个 div?