javascript:void(0)的作用

本文探讨了在网页开发中使用#与javascript:void(0)作为链接点击事件的处理方式。介绍了这两种方法的优缺点,并给出了实际应用场景的示例。
javascript:void(0)的作用:

在组网页时,如果想做到点击一个连接而不做任何事情,这是可以使用javascript:void(0)来填充href的值,但有人说可以用#来代替,如果用#好代替的话,用户点击的时候,当网页有滚动条的时候网页会返回到页面的顶端,使得用户的体验不好。

如果希望使用#来代替javascript:void(0) 可以这样

<a href="#" onclick="javascript:return false;">asdsdfdf</a>

package serv; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.RowMapper; import entity.Material; public class MaterialService extends BaseService { /** * 把一条材料信息加入到数据库中 */ public void addMr(String mtime,String mzno,String mpeople,String mname,String mquantity,double mmoney,String mno){ try { String sql = "insert into Material(mtime,mzno,mpeople,mname,mquantity,mmoney,mno) VALUES(?,?,?,?,?,?,?)"; jt.update(sql,mtime,mzno,mpeople,mname,mquantity,mmoney,mno); } catch (DataAccessException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } } /** * 根据mno查询材料 */ public Material getmaterialBymno (String mno)throws DataAccessException{ Material material = null; try { String sql = "select * from material where mno= ?"; material = jt.queryForObject(sql,new MaterialRowMapper(), mno); } catch (DataAccessException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } return material; } /** *删除材料 ->1 * @param sno * @throws DataAccessException */ public void deleteMaterial(String mno) throws DataAccessException{ String sql = "delete from Material where mno=? "; jt.update(sql,mno); } /** * 获取所有材料信息 */ public ArrayList<Material> getAllMaterial(String mtime){ ArrayList<Material> al = null; try { String sql = "select * from material "; al = (ArrayList<Material>)jt.query(sql,new MaterialRowMapper()); } catch (DataAccessException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } return al; } private class MaterialRowMapper implements RowMapper<Material> { public Material mapRow(ResultSet rs, int rownum) throws SQLException { Material material= new Material(); material.setMno(rs.getString("mno")); material.setMname(rs.getString("mname")); material.setMtime(rs.getString("mtime")); material.setMpeople(rs.getString("mpeople")); material.setMzno(rs.getString("mzno")); material.setMquantity(rs.getString("mquantity")); material.setMmoney(rs.getDouble("mmoney")); return material; } } }
### JavaScript 中 `javascript:void(0)` 的用法及意义 #### 基本定义与作用 `javascript:void(0)` 是一种特殊的 JavaScript 表达式,主要用于返回未定义的结果 (undefined),并常用于 HTML 超链接 (`<a>` 标签) 或其他事件处理场景中以防止默认行为的发生。通过这种方式可以有效避免页面跳转或其他不必要的操作[^1]。 #### 防止超链接的默认行为 当 `<a>` 标签被点击时,默认情况下会触发浏览器导航到指定 URL 地址的行为。如果希望阻止这种默认行为,则可以在 `href` 属性中设置为 `javascript:void(0);` 。例如: ```html <a href="javascript:void(0)" onclick="alert('Link clicked')">Click Me</a> ``` 上述代码片段展示了如何利用 `javascript:void(0)` 来停止链接跳转的同时执行自定义函数逻辑[^2]。 #### 应用于表单提交控制 除了管理链接外,在某些情形下也需要抑制表单提交动作。此时也可以采用类似的机制来实现这一目标: ```html <form onsubmit="return false;"> <input type="text" name="username"> <button type="submit">Submit</button> </form> <!-- or --> <form onsubmit="void(0);"> <input type="text" name="username"> <button type="submit">Submit</button> </form> ``` 这两种方法都可以有效地中断标准的表单递交流程,并允许开发者自行编写验证或者异步请求等相关业务逻辑[^3]。 需要注意的是虽然这种方法广泛应用于早期Web开发实践中,但在现代前端框架和库日益普及的情况下,推荐更多地依赖于这些工具所提供的更强大灵活的功能集来进行交互设计而非直接操纵DOM属性. ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值