【发布时间】:2012-10-26 04:06:44
【问题描述】:
现在这不仅仅是另一个有什么区别的问题,我有done some tests(http://jsfiddle.net/ZC3Lf/) 修改<form action="/test/"></form> 的prop 和attr,输出为:
1) 道具修改测试
道具:http://fiddle.jshell.net/test/1
联系人:http://fiddle.jshell.net/test/12) 属性修改测试
道具:http://fiddle.jshell.net/test/1
联系人:/test/13) Attr 然后 Prop 修改测试
道具:http://fiddle.jshell.net/test/11
联系人:http://fiddle.jshell.net/test/114) Prop 然后 Attr 修改测试
道具:http://fiddle.jshell.net/test/11
联系人:http://fiddle.jshell.net/test/11
据我所知,现在我对几件事感到困惑:
Prop:通过 JavaScript 进行任何修改后的当前状态值
Attr : 页面加载时在 html 中定义的值。
现在,如果这是正确的,
- 为什么修改
prop似乎会使action完全合格,反之,为什么修改属性不行? - 为什么修改
1)中的prop会修改属性,那对我来说没有意义? - 为什么修改
2)中的attr会修改属性,它们是要这样链接的吗?
测试代码
HTML
JavaScript
var element = $('form');
var property = 'action';
/*You should not need to modify below this line */
var body = $('body');
var original = element.attr(property);
body.append('<h1>Prop Modification test</h1>');
element.prop(property, element.prop(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Attr Modification test</h1>');
element.attr(property, element.attr(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Attr then Prop Modification test</h1>');
element.attr(property, element.attr(property) + 1);
element.prop(property, element.prop(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Prop then Attr Modification test</h1>');
element.prop(property, element.prop(property) + 1);
element.attr(property, element.attr(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
【问题讨论】:
标签: javascript jquery attr prop