实例教程:通过JS更改FORM的action

 建站学院(LieHuo.Net)转载文档 有时候我们不得不通过更改form的action来进行提交数据。当然大多数情况下,我们都是通过隐藏的字段来使action得到不同的数据。比如我们form的action是search.PHP,那么我们都是通过隐藏字段来使我们通过search.PHP搜索不同值,比如<input type=hidden name=action value=article>然后在search.PHP里面通过$_POST['action']=='article'来知道我们搜索内容文章而不是其他。

 但如果我们搜索页面并非只有一个入口search.PHP怎么办?比如我们的全文搜索是search.PHP搜索文章是search_article.PHP搜索新闻是search_news.PHP。怎么办?当然我们可以通过下拉框的值来更改FORM的action,就可以了。

简单代码如下:

以下为引用的内容
  1. <script type=text/javascript>  
  2. <!--  
  3.     function redirectForm( which ){  
  4.         var searchModeList = document.getElementById('searchMode');  
  5.         var actionFile = '';  
  6.         for (var i=0,sml=searchModeList.length; i<sml ; i++ ){  
  7.             if( i == searchModeList.selectedindex ){  
  8.                 actionFile = searchModeList[i].value;  
  9.             }  
  10.         }  
  11.         if( actionFile == ''){  
  12.             return false;  
  13.         }else{  
  14.             actionFileactionFile = actionFile + '.PHP';  
  15.         }  
  16.         which.action = actionFile;  
  17.         which.submit();  
  18.     }  
  19. //-->  
  20. </script>  
  21. <form method=post action= onsubmit=return redirectForm(this); id='searchForm'>  
  22.     <select id=searchMode>  
  23.         <option value=search selected=selected>Default</option>  
  24.         <option value=search_article >Article</option>  
  25.         <option value=search_news>News</option>  
  26.     </select>  
  27.     <input type=submit />  
  28. </form>

 文章来自:http://www.neatcn.com/show-411-1.shtml

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...