土豆不好吃

找回小锁头,对HTTP表单说No

文章目录[显示]

话说, 本博客上面有个”美剧电影“的栏目,其中有个带有HTTP的、人人影视的form表单,所以,俺的小锁头就没了。
原来的HTML代码大概是这样子的(这HTML代码写转义真是累啊……):

<form action="http://www.zimuzu.tv/search/index?keyword=" method="get" name="search" target="_blank">
<input class="keywords" name="keyword" type="text" value="" />
<input class="submit" type="submit" value="搜索" />
</form>

好吧,其实俺忍了很久了,那该怎么把小锁头找回来呢?先说说我的思路

强行把HTTP改成HTTPS

这不是我的可控范围之内,非常可怜的是,字幕组不带HTTPS,此路不通。

用PHP获取到输入内容,然后处理

用超全局变量_GET或者_POST获取到用户输入的内容,然后再跳转到对应的页面。思路是这么个思路,但是不太现实啊!提交的内容还得给某个PHP文件处理,太不经济划算了!

嗯……多亏了维护那款Typecho主题,我对PHP的掌控还是可以的……

短网址缩短服务

咱这是GET方法,要不试试短链接服务?是这么个道理,可是找一圈,我也没发现几个好用的支持HTTPS的、速度不错的、切实可行的短链接服务,就差自己搭建一个了……

用JavaScript吧

没错,事到如今,只好用起JavaScript了,通过getElementByIdvalue方法获取到用户输入的内容,通过window.open打开新的窗口,这样小锁头就回来了。

Talk is cheap, show me the code!

<input id="txt1" size="12" type="text" />
<input type="button" value="搜索" onclick='window.open("http://www.zimuzu.tv/search/index?keyword="+document.getElementById("txt1").value,"_blank");'/>

如果觉得这样看起来比较费事的话,也可以写成函数的形式:

<input id="txt1" size="12" type="text" />
<input type="button" value="搜索" onclick="search()"/>
<script>
function search(){
window.open("http://www.zimuzu.tv/search/index?keyword="+document.getElementById("txt1").value,"_blank");
}
</script>

完美!!

初学JavaScript,还望多多指教!


文章版权归原作者所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明原作者和本文原始地址:
https://dmesg.app/say-no-to-http-form.html
退出移动版