html之input如何通过拖放得到文件路径

按照其他博文提到,目前在学习go中,想通过golang+lorca写一个基于chrome的exe,来实现N多自动化操作。为啥不用QT呢,别问,问就是因为我想学习新东西,哈哈。
好的,正文来了,本地的exe经常会有拖动文件路径的需求
我想通过以下的代码来实现我的拖拽需求
H5代码
这里是一个输入框
在这里插入图片描述

			<div class="bgDiv">
				<label  for="project_type" style="float:left">HAHA:  </label>
				<input type="text" class="search-input-text dut_ll" draggable="true" value="" id="dut_log" autofocus placeholder="Google ">
			</div>

实现拖拽功能的JS代码
但是发现textData是未定义的,芭比Q了

		<script>
			var input = document.querySelector('.dut_ll');
			input.addEventListener('drop', function (event) {
				console.log(event)
				event.preventDefault();
				var textData= event.dataTransfer.files[0].path; // get the
				console.log(fileName)
				var oldval = event.target.value; // get the old value in the input
				var newval = oldval + textData; // add it with the value which is dragged upon
				event.target.value = newval; // change the value with the new value
				console.log("newval")
				console.log(newval)
			});
			document.querySelector('[draggable="true"]').addEventListener('dragstart', function(e){
			// e.dataTransfer.setData('text', e.target.innerHTML);
			console.log("addEventListener")
			e.dataTransfer.setData('text', "e.target.innerHTML");
			});
			</script> 

这个问题起码卡了我两天,没办法,初学,水平太菜

google了一圈后,发现以下的答案比较靠谱
https://stackoverflow.com/questions/58880171/get-file-path-from-drop-event
在这里插入图片描述
所以感觉没办法,不得不接受electron这个打包chrome exe的臭毛病了,exe大一点就大一点吧,哎,菜鸟就这样,框架不支持,就只能换框架,太怂了呀

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
获取input文件路径的方法有多种。一种常见的方法是使用.val()方法来获取文件路径,但是在某些情况下,获取到的路径可能会有问题,例如在某些浏览器中,获取到的路径可能会以"C:\fakepath\"开头。为了解决这个问题,可以使用URL.createObjectURL()方法来获取文件的URL。这个方法会返回一个以"blob:null/ed7d6cfa-35f8-4e3c-8fb7-82d7dce74b81"形式的URL,可以将其设置给<img>标签来显示图片。\[1\] 另外,还可以通过window的createObjectURL这个API来获取文件的本地地址。具体的代码可以参考以下示例: ```javascript getFileURL(file) { var getUrl = null; if (window.createObjectURL != undefined) { getUrl = window.createObjectURL(file); } else if (window.URL != undefined) { getUrl = window.URL.createObjectURL(file); } else if (window.webkitURL != undefined) { getUrl = window.webkitURL.createObjectURL(file); } return getUrl; } ``` 这段代码会根据不同的浏览器使用不同的方法来获取文件的本地地址。\[2\] 如果你在搜索过程中遇到了一些问题,可以参考一些比较可靠的答案,例如在stackoverflow上的相关问题。\[3\]希望这些信息对你有帮助! #### 引用[.reference_title] - *1* [jQuery 获取 input:file 文件路径( Firefox for Ubuntu )](https://blog.csdn.net/qq_41986908/article/details/107011700)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [获取input选择文件的本地地址](https://blog.csdn.net/qq_40816649/article/details/95347700)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [htmlinput如何通过得到文件路径](https://blog.csdn.net/qq_41898367/article/details/124201661)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值