<%--兼容IE7 必须放在 head 的第一行--%>
独上高楼网站
  • 如何给按钮加上链接功能
  • 脚本说明:

    把如下代码加入<body>区域中

    <INPUT TYPE="submit" value="建站资源网" onclick="location.href='http://www.jzzy.com'">

    按钮链接乾坤大挪移 

    作为一个小技巧,暂时归类到ASP中。

    在设计网站的时,我们可能会想把链接做成按钮的样子,按钮做成链接的样子。下面说一下我的方法。

    1、按钮做成链接(图片)的样子

    提交按钮<input type="submit" value="提交">

    提交链接<a href="#" onclick="表单名字.submit()">提交</a>

    重置按钮<input type="reset" value="重置">

    重置链接<a href="#" onclick="表单名字.reset()">重置</a>

    普通按钮<input type="button" value="按钮" onclick="函数()">

    普通链接<a href="#" onclick="函数()">链接</a>

    至于图片也一样把a标签换成img

    2、链接做成按钮的样子

    <a href="reg.asp">注册</a>

    =><input type="button" value="注册" onclick="location.href='reg.asp'">

    -----------------------------------

    有的时候我们完全可以手工做一个get方式的表单,至于用按钮还是链接随心所欲。

    <form action="xx.asp" method="get" name="form1">

      <input name="aa" type="text" id="aa">

      <input name="bb" type="text" id="bb">

      <input type="submit" name="Submit" value="提交">

    </form>

    =>

    <input name="aa" type="text" id="aa">

    <input name="bb" type="text" id="bb">

    <input type="button" value="按钮" onclick="location.href='xx.asp aa='+document.all['aa'].value+'&bb='+document.all['bb'].value">

    -----------------------------------

    进一步说我们还可以做一个按钮(链接)来同时传递js变量,表单input的值,asp变量,Recordset值

    <script language="javascript">

    var id1=1;

    </script>

    <%

    id3=3

    ....

    rs.open exec,conn,1,1

    假设有rs("id4")=4

    ...

    %>

    <input name="id2" type="text" id="id2" value="2">

    <input type="button" value="按钮" 

    onclick="location.href='xx.asp id1='+id1+'&id2='+document.all['id2'].value+'&id3=<%=id3%>&id4=<%=rs("id4")%>'">

    我们按下按钮会看到浏览器的url是xx.asp id1=1&id2=2&id3=3&id4=4

    在xx.asp中我们就可以用request.querystring来得到所有变量,这样是不是变相的客户端js和服务器段的变量传递 

    ------------------------------------------------------------------------------------------------------------------------------

    如何给按钮加上链接功能

    解决思路: 

    按钮属于控件级的对象,优先级比较高,所以不能象图片或文本一样直接加链接,只能通过按钮的单击事件调用脚本的方式来实现。

    具体步骤: 

        1.在原窗口打开链接 

        <input type="button" 

    value="闪吧" onClick="location=’http://www.flash8.net’"> 

        <button onClick="location.href=’http://www.flash8.net’">闪吧</button> 

        <form action="http://www.flash8.net"><input type="submit" value="打开链接"></form> 

        2.在新窗口中打开链接 

        <input type="button"  

    value="闪吧" onClick="window.open(’http://www.flash8.net’)"> 

        <button onClick="window.open(’http://www.flash8.net’)">闪吧</button> 

        <form action="http://www.flash8.net"  

    target="_blank"><input type="submit" value="打开链接"></form> 

    注意:onClick调用的代码里的引号在只有一重时可以单双嵌套,超过两重就必须用"\"号转义且转义的引号必须跟里层的引号一致,如: 

    <button onClick="this.innerHTML=’<font color=\’red\’>http://www.flash8.net</font>’">闪吧</button> 

    或 

    <button onClick=’this.innerHTML="<font color=\"red\">http://www.flash8.net</font>"’>闪吧</button> 

    而下面都是错误的写法: 

    <button onClick="this.innerHTML=’<font color=’red’>http://www.flash8.net</font>’">闪吧</button> 

    <button onClick="this.innerHTML=’<font color="red">http://www.flash8.net</font>’">闪吧</button> 

    <button onClick="this.innerHTML=’<font color=\"red\">http://www.flash8.net</font>’">闪吧</button> 

     提示:大部分属于window或document对象的方法和属性都可以省略前缀window或document,比如说本例中的location.href(location.href又可以简写为location,因为location的默认对象为href)就是window.location.href或document.location.href的省略式写法。 

    技巧:本例中还可以用下面的方法来代替location.href 

    location.replace(url) 

    location.assign(url) 

    navigate(url) 

    特别提示 

    第一步中的代码运行后,单击按钮将跳转到链接目标。而第二步的在单击按钮后将在新窗口中打开链接。 

    特别说明

    本例主要是通过用onClick捕获用户在按钮上的单击事件,然后调用location对象的href方法或window对象的open方法来打开链接。另外一个技巧是通过提交表单来实现链接功能,按钮必须是type=submit类型的按钮,表单的action值就是链接目标,target值就是链接打开的目标方式。

    om%62%
  • 与本文主题相关的文章