JavaScript来在服务器端的一种形式?(Javascript for a form on th

2019-07-30 03:17发布

这个问题从与克里斯托弗讨论出现在我的最后一个问题“HTML:目标=” _空白”的下拉列表”和安德鲁的替代方法。

问题:对,因为一些用户缺乏支持JavaScript代码运行服务器端。 情况是这样一种形式在这里。

几点建议:

克里斯托夫的建议:

<form action="path-to-redirection-script" method="GET" target="_blank"
 onsubmit="window.open(this.elements['foo'].value); return false;">
 <select name="foo" size="1">
  <option value="http://google.com">google</option>
 </select>
 <input type="submit" value="go">
</form>

另一种方法由安德鲁:

<form onsubmit="this.js_enabled.value=1;return true;">
    <input type="hidden" name="js_enabled" value="0">
    <input type="submit" value="go">
</form>

问:你会怎么做形式上的情况下,服务器端脚本?

Answer 1:

事实上,这取决于你要使用服务器端语言。

但是,这是因为读出在POST值和获取值的形式提供您简单。

即PHP:

if($_POST["js_enabled"] == 0)  
{  
   doSomething(); // Redirecting   
}

但是不要忘记,以验证所有值。

祝好运,
rAyt

编辑

你去那里(相当不错的答案虽然)

如何POST和GET变量在Python处理?



Answer 2:

有没有需要任何额外的代码或检查服务器端脚本:由于的return falseonsubmit处理程序,该form将不被当执行处理程序提交!

返回false从事件处理程序supresses与事件相关联的方式调用相同的默认操作event.preventDefault() event.returnValue = false在IE)一样。



文章来源: Javascript for a form on the server-side?