Ruby on rails 在rails&;中上载之前显示图像预览的最佳方式;卡里尔瓦夫
在过去的几天里,我一直在使用rails,我想知道在rails&carrierwave中上传之前显示图像预览的最佳方式是什么Ruby on rails 在rails&;中上载之前显示图像预览的最佳方式;卡里尔瓦夫,ruby-on-rails,image,upload,carrierwave,preview,Ruby On Rails,Image,Upload,Carrierwave,Preview,在过去的几天里,我一直在使用rails,我想知道在rails&carrierwave中上传之前显示图像预览的最佳方式是什么 我遇到了一些选项,比如使用plupload或jquery文件上传或使用uploadify 你可以使用插件,它是一个完整的解决方案,但是如果你需要一些不太健壮的东西,你也可以直接尝试使用,比如,这样你就可以根据你的需要定制功能。根据文档image\u cache显示了你正在上传的内容 <%= f.hidden_field :image_cache %> 如果您在
我遇到了一些选项,比如使用plupload或jquery文件上传或使用uploadify 你可以使用插件,它是一个完整的解决方案,但是如果你需要一些不太健壮的东西,你也可以直接尝试使用,比如,这样你就可以根据你的需要定制功能。根据文档
image\u cache
显示了你正在上传的内容
<%= f.hidden_field :image_cache %>
如果您在上传之前只需要在表单中预览图像,您(和我一样)会看到JQuery上传插件太复杂,并且不太容易正常运行(我可以看到预览,但随后无法上传图片) 编写代码既简单又快速 我将代码放在这里,以防源代码死亡: 脚本:
<!-- Assume jQuery is loaded -->
<script>
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#img_prev')
.attr('src', e.target.result)
.width(150)
.height(200);
};
reader.readAsDataURL(input.files[0]);
}
}
</script>
函数readURL(输入){
if(input.files&&input.files[0]){
var reader=new FileReader();
reader.onload=函数(e){
$('img#u prev')
.attr('src',e.target.result)
.宽度(150)
.身高(200);
};
reader.readAsDataURL(input.files[0]);
}
}
在HTML中:
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<input type='file' onchange="readURL(this);" />
<img id="img_prev" src="#" alt="your image" />
</body>
我认为它使用了一些HTML5功能,这可能是原因所在class@Puce对于多个图像。此MDN页面还显示浏览器兼容性哪个文档?有参考资料吗?如果您提供文档的参考资料,效果会更好。此功能用于在提交内容之间重新显示,而不是预览。我使用了此功能,但如果用户转到其个人资料更改,例如说他的姓氏,则需要他再次上传图片,虽然它已经在前一个会话中加载,并且图片是可见的。不知道怎么处理。