更改输入的类型
Changing type of an input
我想在点击按钮时更改输入的类型,但它不起作用。我试过这个:
$('.addPhoto').click(function(){
$(this).siblings('.auto_image').prop("type", "file");
});
它一点作用都没有。我在谷歌上搜索后发现:使用jQuery 更改输入字段的类型
它说可以用直接的DOM来实现,但是我如何用DOM来选择同级的类呢?
您可以一起替换元素,但我认为您不能只更改类型属性,请参阅我的示例。
$('.addPhoto').on("click",function(){
$(this).off("click").replaceWith("<input type='file' class='addPhoto'/>");
});
或
$('.addPhoto').one("click",function(){
$(this).replaceWith("<input type='file' class='addPhoto'/>");
});
http://jsfiddle.net/ECzP4/
这是replaceWith()
的jQuery文档http://api.jquery.com/replaceWith/
要获得dom对象,只需从jQuery集合中获取第一项:
var domObject = $(this).siblings('.auto_image')[0]
虽然它似乎不能从text
变为file
-http://jsfiddle.net/7HTgA/
因此,我建议有两个输入,并根据需要显示/隐藏它们,而不是试图更改单个输入的类型。
将其所有同级与类型为file的auto_image
类相加。
$(this).siblings('.auto_image').attr('type','file')
相关文章:
- 使用模式格式化Number类型输入中的值
- 在 JavaScript 中单击函数时两个日期类型输入之间的差异的代码
- 在codeigneter中按类型输入框显示数据库中的数据
- 已从'上传文件;文件'img字段中未显示类型输入字段
- 如何使用ReactTestUtils设置HTML5文件类型输入
- 检测用户拖动范围类型输入
- 无法在使用 Java 脚本创建的表单中设置提交类型输入
- 按钮类型输入上的点击事件不起作用
- 如何使用javascript更改隐藏类型输入字段的值
- sap.m中的自定义输入类型.输入sap-ui5
- 如何使用jquery动态添加/删除文件类型输入字段
- 提交事件未捕获提交类型输入
- Jquery - info/docs关于适用于表单中不同类型输入元素的属性列表
- 从Mobile Safari'日期/时间类型输入字段触发哪些事件?
- 饼状图II -动态值从范围类型输入
- 我可以在文件类型输入中显示文件大小吗?
- 新的webkit在数字类型输入中将十进制逗号转换为~ dot,反之亦然.该浏览器特性的Javascript名称
- 如何在javascript中验证具有相同名称的多个相同类型输入
- 邮件类型输入:如果邮件错误或正确,动态改变按钮的颜色/文本
- 如何将文件类型输入传递到javascript中,并将其用于另一个php页面