我有代码:
<input id="arrPathPhotoTop" value = < ? php echo json_encode($arrPathPhotoTop); ?> hidden>
真正的HTML代码是:
<input id="arrPathPhotoTop" value="{"1":".\/files\/topface-numbers\/1.jpg","2":".\/files\/topface-numbers\/2.jpg"}" hidden>
1)控制台输入:$(&#34;#arrPathPhotoTop&#34;)。val(&#34; www&#34;);
输出:
[
<input id="arrPathPhotoTop" value="{"1":".\/files\/topface-numbers\/1.jpg","2":".\/files\/topface-numbers\/2.jpg"}" hidden >
]
2)控制台输入: $(&#34;#arrPathPhotoTop&#34)。VAL();
输出: &#34; WWW&#34;
结果:代码html并不是真的,而是真实的&#34;价值已经改变了。可以吗?
示例img:http://i.stack.imgur.com/Y1hkN.jpg
检查:http://jsfiddle.net/nywuctuk/S9mUL/1702/ WTF?
真正的答案是: 隐藏导致类型=&#34;隐藏&#34;
http://jsfiddle.net/nywuctuk/S9mUL/1703/
P.S。网站名称必须更改为&#34;帮助自己&#34; :d
答案 0 :(得分:1)
Jquery&#39; .val()
将在内部更改该元素对象的value属性。这意味着它不会反映HTML
的value属性中的这些更改。这是.val()
工作原理的自然行为。如果您想使用html字符串获取或设置value attribute
,那么您需要使用.attr()
答案 1 :(得分:0)
&#39;价值&#39; tag在加载页面时控制原始值,但之后大部分都不相关;您已正确更新了该值,但不会更改原始HTML。您现在几乎可以忽略HTML指定的初始值。