使用 FileApi 将文件上传到输入区域
Upload file to an input area using FileApi
我正在使用 Capybara + RSpec 和 capybara_webkit 为 driver。以及带有 FileApi 的 JS 上传器。
我正在尝试在此处上传三张图片:
<input type="file" name="image" multiple="" accept="image/*">
当我单击 "Select photos" 按钮(在浏览器上)时,它会打开典型的 window,我可以在其中 select 3 个文件 从我的电脑。
我想知道如何在水豚上复制它,因为当照片 select 或打开时,我无法控制它。我尝试将图片添加到我的测试文件夹并尝试:
attach_file('image', File.absolute_path('../pictures/photo1.JPG'))
但没有结果。
我终于找到了解决办法。我的输入区域的不透明度设置为 0
,所以这就是我无法附加文件的原因。
所以我需要将它的不透明度设置为 1:
page.execute_script("$('input[name=file]').css('opacity','1')")
我正在使用 Capybara + RSpec 和 capybara_webkit 为 driver。以及带有 FileApi 的 JS 上传器。
我正在尝试在此处上传三张图片:
<input type="file" name="image" multiple="" accept="image/*">
当我单击 "Select photos" 按钮(在浏览器上)时,它会打开典型的 window,我可以在其中 select 3 个文件 从我的电脑。
我想知道如何在水豚上复制它,因为当照片 select 或打开时,我无法控制它。我尝试将图片添加到我的测试文件夹并尝试:
attach_file('image', File.absolute_path('../pictures/photo1.JPG'))
但没有结果。
我终于找到了解决办法。我的输入区域的不透明度设置为 0
,所以这就是我无法附加文件的原因。
所以我需要将它的不透明度设置为 1:
page.execute_script("$('input[name=file]').css('opacity','1')")