Heim  >  Artikel  >  Backend-Entwicklung  >  javascript - ajax刷新的问题

javascript - ajax刷新的问题

WBOY
WBOYOriginal
2016-10-10 11:56:091034Durchsuche

就是想要类似segmentfaul的效果 点击哪个分区就显示出相应的内容 但是现在的问题是不知道href的链接怎么写 我想要内容在当前页面显示 herf不能写#吧 如果写href="1.html" 就会出现先显示数据再跳转的情况 这样页面就是空的 不能显示出来数据 这种情况该怎么办呢? 麻烦大家看仔细一点 我不是想阻止跳转啊 我想知道segmentfault这种效果 是怎么实现的 如果用的ajax完全没必要去跳转刷新页面 但是segmentfault是有跳转刷新的 这个是怎么弄的呢?

<code>代码只是大概描述一下
1.html



    <title></title>
    <script type="text/javascript">
       document.getElementById('java').onclick=function(){
          div.innerHTML=str;
       }
    </script>


<a href="#" id="java">java</a>
<a href="#" id="php">php</a>
<div></div>

</code>

回复内容:

就是想要类似segmentfaul的效果 点击哪个分区就显示出相应的内容 但是现在的问题是不知道href的链接怎么写 我想要内容在当前页面显示 herf不能写#吧 如果写href="1.html" 就会出现先显示数据再跳转的情况 这样页面就是空的 不能显示出来数据 这种情况该怎么办呢? 麻烦大家看仔细一点 我不是想阻止跳转啊 我想知道segmentfault这种效果 是怎么实现的 如果用的ajax完全没必要去跳转刷新页面 但是segmentfault是有跳转刷新的 这个是怎么弄的呢?

<code>代码只是大概描述一下
1.html



    <title></title>
    <script type="text/javascript">
       document.getElementById('java').onclick=function(){
          div.innerHTML=str;
       }
    </script>


<a href="#" id="java">java</a>
<a href="#" id="php">php</a>
<div></div>

</code>

就写单独的url吧,它也不是ajax刷新,就是get。有很多小版块其实也问题不大,后端也很轻松。因为数据格式基本差不多,匹配路由时写个正则去匹配请求的url就行了,然后处理数据在一个controller里,在根据不同的url返回不同的数据即可。而且前端模板也不需要变化很大,复用性也很强。

在事件处理函数中可以通过调用preventDefault或者return false来阻止浏览器的默认行为(这里的默认行为就是跳转)。另外他是服务器渲染,并不是ajax。

最后,建议买本书系统的学习,这些问题真的太基础了,即使是没有系统的学习过,搜索或者查API的效率也比提问高得多

不管 <a></a>href 是啥,你都可以在事件中阻止默认行为

下面是 jQuery 代码,原生代码也差不多,调用 event 的 preventDefault(),或者返回 false

<code class="javascript">$("#java").on("click", e => {
    e.preventDefault();
});</code>

不过也可以直接设置 href 让它啥也不干

<code class="html"><a href="javascript:%20void(0)" ...>...</a></code>

点击到某个页面的时候,这个页面对应的js代码发送一个HTTP GET请求到后台,然后后台返回相应的(比如java/php等)数据足以。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn