2011-08-29 24 views
1

示例代碼的網站鏈接點擊:http://www.smyrnart.com/deeplinking/index.htmlJQuery的AJAX的JavaScript

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    $('a').click(function(event) { event.preventDefault();}); 
    $('a').click(function(event) { 
     event.preventDefault(); 
     $.ajax({  
     url: 'index2.html',  
     success: function(data){   
     $('#yourDiv').html(data);  
     }  
     }); 
    }); 
}); 
    </script> 


<a title="" href="javascript:;">Click 5 times. Alert reload</a> 
<div id="yourDiv" style="margin-top:50px;"></div> 

AJAX index2.html

<script type="text/javascript"> 
$('a').click(function() { 
    alert('CLICK X 2') 
}); 
</script> 
+2

你到底想幹什麼? – jQuerybeast

+0

uptade question –

回答

1

解決!

的jquery.js版本1.3.6;

// Evalulates a script in a global context 
globalEval: function(data) { 
    if (data && /\S/.test(data)) { 
     // Inspired by code by Andrea Giammarchi 
     // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html 
     var head = document.getElementsByTagName("head")[0] || document.documentElement, 
      script = document.createElement("script"); 

     script.type = "text/javascript"; 
     if (jQuery.support.scriptEval) 
      script.appendChild(document.createTextNode(data)); 
     else 
      script.text = data; 

     // Use insertBefore instead of appendChild to circumvent an IE6 bug. 
     // This arises when a base node is used (#2709). 
     head.insertBefore(script, head.firstChild); 
     head.removeChild(script); 
     **$(head+"script:last").remove();** 
    } 
}, 
0

你應該附上script在index2.html在<script>標籤讓jQuery將知道它是一個腳本,並且在將其設置爲html之前需要解析它。

<script type="text/javascript"> 
    $.address.unbind('change').bind('change', function(e) {  alert('problem') }); 
</script> 
+0

我的問題是當index2.html多個重複的程序。 –

+0

費用是多少。需要解決這個問題。 –

+0

老兄你的問題不清楚。你應該清楚你的問題。 – ShankarSangoli

0

我認爲他的問題是重複代碼。你可以看到彈出一直在增加。東西我需要重置轉換功能。消除了這樣的問題。

+0

緩存不斷 –

+0

http://www.smyrnart.com/deeplinking/#/index1 例如 –

0

我假設你想從一個鏈接頁面數據,Ajax和轉存到一個div。如果你只是想做到這一點,你可以使用$ .load函數。

$('#ajaxLinks a').click(function(event){ 
    event.preventDefault(); 
    var $link = $(this).attr('href'); 
    $('#yourDiv').load($link); 
}); 

,或者如果你想如果你使用$阿賈克斯()方法來做到這一點通過$就功能...

$('#ajaxLinks a').click(function(event){ 
    event.preventDefault(); 
    var $link = $(this).attr('href'); 
    $.ajax({ 
     url: $link, 
     success: function(data){ 
     $('#yourDiv').html(data); 
     } 
    }); 
}); 

,也可以鏈中的成功和錯誤方法像這樣......

$.ajax({url:'link.html'}) 
    .success(function() { /* DO SOMETHING ON SUCCESS */ }) 
    .error(function() { /* DO SOMETHING ON ERROR */ }) 

添加事件功能 - > 「的preventDefault()」 見上票據& ......

+0

uptade問題。我很感謝你的幫助。 –

+0

您所在的位置Click 5 times. Alert reload更改href =「javascript :;」到href =「index2.html」。此外,添加防止違約事件在點擊功能,因此它可以防止改變整個頁面的鏈接...'$代碼(「A」)。點擊(函數(事件){ 事件。的preventDefault(); ' –

+0

不幸的是,這個問題無法解決。您可以在http://www.smyrnart.com/deeplinking/index.html進行測試 –

0

這裏......我修改後的代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>STACKOVERFLOW - jQuery Click 5 then AJAX Load Something</title> 
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"> 
</head> 
<body> 
<a href="index2.html">Click 5 times. Alert reload</a> 

<div id="yourDiv" style="margin-top:50px;"></div> 
<!-- JS SCRIPTS--> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
    i = 0; // Initialize Click Counter "i" 
    $('a').click(function(event) { 
     event.preventDefault(); // Prevent link from forwarding to page 

     // Checks if link was clicked 5 times 
     if(i == 5){ 
      $.ajax({  
      url: 'index2.html',  
      success: function(data){   
      $('#yourDiv').html(data);  
      }  
      }); 
     } else { 
      i++; // ELSE: Increment Click Counter "i" 
     } 

    }); 
}); 
</script> 
<!-- [end] JS SCRIPTS (Before Body Tag Closure)--> 
</body> 
</html> 

我還引擎收錄粘貼此,所以你能抓住它: http://pastebin.com/zhUHRKrd