2013-04-25 21 views
0

是否可以從我的網站本地運行腳本,而不是將它連接到Jquery.com託管的庫/查詢? 目前,它的在線連接到另一個頁面進行查詢,但是所有的功能都在代碼和我需要它,而不需要在線librbary或任何背景庫在本地運行在本地運行Javascript而不是連接到JQuery

感謝

代碼:

<script type="text/javascript" src="http://www.freshessays.com/jquery.min.js"></script>!-- Start Calculator block -- 

table class="fe_calc fe_block_templ" 
<tr> 
    <td>Academic level:</td> 
    <td> 
     <select id="calform_academic_level1" name="academic_level" onchange="calcountPrice1();" style="width:140px;"> 
      <option value="0">Please select</option> 
      <option value="1">High School</option> 
      <option value="2">Bachelor</option> 
      <option value="3">Master</option> 
      <option value="4">PhD</option> 
      <option value="5">Admissions Help</option> 
     </select> 
     <em class="validator_exp"></em> 
    </td> 
</tr> 
<tr> 
    <td>Deadline:</td> 
    <td> 
     <select id="calform_deadline1" name="deadline" onchange="calcountPrice1();" style="width:140px;"> 
      <option value="0" selected="selected">Please select</option> 

      <option value="1">24 hours</option> 

      <option value="2">48 hours</option> 

      <option value="3">3 days</option> 

      <option value="4">4 days</option> 

      <option value="5">5 days</option> 
      <option value="6">6 days</option> 
      <option value="7">7 days</option> 

      <option value="8">8 days</option> 
      <option value="9">9 days</option> 
      <option value="10">10 days</option> 
      <option value="11">11 days</option> 

      <option value="12">12 days</option> 
      <option value="13">13 days</option> 
      <option value="14">14+ days</option> 
     </select> 

     <em class="validator_exp"></em> 
    </td> 
</tr> 

<tr> 
    <td id="pages_name1">Number of pages:</td> 
    <td> 

     <input maxlength="3" style="width: 40px;" id="calform_pages1" name="pages" 
onkeyup="calcountPrice1();" onkeydown="calcountPrice1();" onchange="calcountPrice1();" type="text"> 
     <em class="validator_exp"> </em> 
    </td> 
</tr> 
<tr> 
    <td>The price is:</td> 
    <td> 
     <span id="calprice_div1">AED 0</span> 
    </td> 
</tr> 
<tr> 
    <td></td> 

</tr> 
</table> 

var calvalid; 

function calvalidate_field (field_id) { 
var value = $("#"+field_id).val(); 
var tmp_reg_exp = $("#"+field_id).next(".validator_exp").html(); 
reg_exp = new RegExp(tmp_reg_exp); 
if (!value.match(reg_exp) || (field_id == "form_repeat_password" && !check_password("form_new_user_password","form_repeat_password"))) { 
    calvalid = false; 
    return false; 
} 
return true; 
} 


var caldeadline = new Array 
(new Array (0,135,153,188,235,318), 
new Array (0,124,141,170,206,288), 
new Array (0,106,129,153,177,235), new Array (0,106,129,153,177,235), new Array (0,106,129,153,177,235), new Array (0,106,129,153,177,235), 
new Array (0,94,118,141,165,218), new Array (0,94,118,141,165,218),new Array (0,94,118,141,165,218),new Array (0,94,118,141,165,218), 
new Array (0,94,118,141,165,218), new Array (0,94,118,141,165,218),new Array (0,94,118,141,165,218), 
new Array (0,82,106,129,153,200)); 

$(document).ready(function() { 
$(".right_email").attr("href","mai"+"lto:su"+"ppor"+"[email protected]"+"hessays.c"+"om").text("su"+"ppor"+"[email protected]"+"hessays.c"+"om"); 
$("#calform_deadline").val(0); 
$("#calform_academic_level").val(0); 
}); 

function calcountPrice() { 
calvalid = true; 

calvalidate_field("calform_academic_level"); 

if (calvalid) { 
    var al = $("#calform_academic_level").val(); 
} 


var add = 1; 
var round_off = false; 
var pages_name = 1;  


if (pages_name == 1) {    
    $("#pages_name").text("Number of pages:");  
} 

calvalidate_field("calform_deadline"); 

if (!calvalid) { 
    $("#calprice_div").text("AED 0");    
} else { 

    var total = caldeadline[$("#calform_deadline").val()-1][al]; 
    var price_mod = 0.85; 
    var work = 1; 
    total = Math.round(Math.round(total*price_mod*add*(round_off? 10 : 1))*work)/(round_off? 10 : 1);    
} 

var valid1 = calvalid; 
calvalid = true; 
calvalidate_field("calform_pages"); 

if (!calvalid) { 
    $("#calprice_div").text("AED 0");    
} 

if (calvalid && valid1) { 
    totalp = total*$("#calform_pages").val(); 
    $("#calprice_div").text("AED "+Math.round(totalp*100)/100);    
} 

} 

function calcountPrice1() { 
calvalid = true; 

calvalidate_field("calform_academic_level1"); 

if (calvalid) { 
    var al = $("#calform_academic_level1").val(); 
} 


var add = 1; 
var round_off = false; 
var pages_name = 1;   

if (pages_name == 1) {    
    $("#pages_name1").text("Number of pages:");  
} 
calvalidate_field("calform_deadline1"); 

if (!calvalid) { 
    $("#calprice_div1").text("AED 0");    
} else { 

    var total = caldeadline[$("#calform_deadline1").val()-1][al]; 
    var price_mod = 0.85; 
    var work = 1; 
    total = Math.round(Math.round(total*price_mod*add*(round_off? 10 : 1))*work)/(round_off? 10 : 1);    
} 

var valid1 = calvalid; 
calvalid = true; 
calvalidate_field("calform_pages1"); 

if (!calvalid) { 
    $("#calprice_div1").text("AED 0");    
} 

if (calvalid && valid1) { 
    totalp = total*$("#calform_pages1").val(); 
    $("#calprice_div1").text("AED "+Math.round(totalp*100)/100);    
} 

} 

</script> 
+2

下載它,並把它放在同一文件夾中的HTML頁面,則指它沒有任何路徑。 – 2013-04-25 09:18:20

+0

將查詢文件下載到您的本地文件夾並運行代碼 – swetha 2013-04-25 09:18:41

+0

感謝您的回覆,但無論如何,無論如何要運行上述代碼而不需要librbary?我的意思是什麼可能會錯過,我可以完全添加和避免librbary。 – nadz 2013-04-25 09:29:00

回答

0

下載並在本地使用jQuery,或只使用純JS

這裏是腳本的DEMO後,我做了一些改動。這是行不通的,因爲HTML不包含所有需要的東西,比如正則表達式

var calvalid; 

function calvalidate_field (field_id) { 
    var fld = document.getElementById(field_id); 
    var value = fld.value; 
    var tmp_reg_exp = fld.parentNode.getElementsByClassName("validator_exp")[0].innerHTML; 
    reg_exp = new RegExp(tmp_reg_exp); 
    if (!value.match(reg_exp) || (field_id == "form_repeat_password" && !check_password("form_new_user_password","form_repeat_password"))) { 
    calvalid = false; 
    return false; 
    } 
    return true; 
} 


var caldeadline = [ 
    [0,135,153,188,235,318],[0,124,141,170,206,288],[0,106,129,153,177,235], 
    [0,106,129,153,177,235],[0,106,129,153,177,235], [0,106,129,153,177,235], 
    [0,94,118,141,165,218],[0,94,118,141,165,218],[0,94,118,141,165,218], 
    [0,94,118,141,165,218],[0,94,118,141,165,218],[0,94,118,141,165,218], 
    [0,94,118,141,165,218],[0,82,106,129,153,200] 
]; 

window.onload=function() { 
    // you need to change the email from class to ID: 
    var email = document.getElementById("right_email"); 
    email.setAttribute("href","mai"+"lto:su"+"ppor"+"[email protected]"+"hessays.c"+"om"); 
    email.innerHTML="su"+"ppor"+"[email protected]"+"hessays.c"+"om"; 

    // I added <a href="#" id="right_email"></a> 
    document.getElementById("calform_deadline1").value=0; 
    document.getElementById("calform_academic_level1").value=0; 
}; 

function calcountPrice() { 
    calvalid = true; 
    calvalidate_field("calform_academic_level"); 
    if (calvalid) { 
    var al = document.getElementById("calform_academic_level").value; 
    } 

    var add = 1; 
    var round_off = false; 
    var pages_name = 1;  
    if (pages_name == 1) { 
    document.getElementById("pages_name").innerHTML="Number of pages:";  
    } 

    calvalidate_field("calform_deadline"); 
    if (!calvalid) { 
    document.getElementById("calprice_div").innerHTML="AED 0"; 
    } else { 
    var total = caldeadline[document.getElementById("calform_deadline").value-1][al]; 
    var price_mod = 0.85; 
    var work = 1; 
    total = Math.round(Math.round(total*price_mod*add*(round_off? 10 : 1))*work)/(round_off? 10 : 1); 
    } 

    var valid1 = calvalid; 
    calvalid = true; 
    calvalidate_field("calform_pages"); 
    document.getElementById("calprice_div").innerHTML="AED 0"; 

    if (calvalid) { 
    if (valid1) { 
     totalp = total*document.getElementById("calform_pages").value; 
     document.getElementById("calprice_div").innerHTML="AED "+(Math.round(totalp*100)/100); 
    } 
    } 
} 

function calcountPrice1() { 
    calvalid = true; 
    calvalidate_field("calform_academic_level1"); 
    if (calvalid) { 
    var al = document.getElementById("calform_academic_level1").value; 
    } 
    var add = 1; 
    var round_off = false; 
    var pages_name = 1;   

    if (pages_name == 1) { 
    document.getElementById("pages_name1").innerHTML="Number of pages:";  
    } 
    calvalidate_field("calform_deadline1"); 
    document.getElementById("calprice_div1").innerHTML="AED 0"; 

    if (calvalid) { 
    var total = caldeadline[document.getElementById("calform_deadline1").value-1][al]; 
    var price_mod = 0.85; 
    var work = 1; 
    total = Math.round(Math.round(total*price_mod*add*(round_off? 10 : 1))*work)/(round_off? 10 : 1); 
    } 
    var valid1 = calvalid; 
    calvalid = true; 
    calvalidate_field("calform_pages1"); 
    if (calvalid) { 
    if(valid1) { 
    totalp = total*document.getElementById("calform_pages1").value; 
    document.getElementById("calprice_div1").innerHTML="AED "+Math.round(totalp*100)/100; 
    } 
    } 
} 
+0

非常感謝你的回覆:)上面看起來不錯,把它換成普通的JS後,但是,當我嘗試從我的瀏覽器本地運行它不顯示任何東西。任何想法? – nadz 2013-04-25 10:12:21

+0

愚蠢的問題,但是JQUERY必須專門爲我的腳本寫嗎?或者它是用來運行java腳本的通用代碼? – nadz 2013-04-25 10:42:32

+0

如果運行失敗,我可能犯了一些錯誤(});例如在window.onload之後)。您的html與腳本完全不匹配(例如,電子郵件字段不存在,例如,calform_deadline不存在) - 我現在修復的那些 jQuery是一個讓事情更容易完成的庫 - 例如,您從某個兄弟標籤獲取一些正則表達式 - 是部分是我不得不寫更多的JavaScript比jQuery例如 – mplungjan 2013-04-25 11:55:11

1

您可以從here下載腳本文件,並將其存儲在本地計算機上。然後在您的HTML頁面中使用<script src="path/to/jquery.min.js" type="text/javascript></script>來獲取jQuery。

0

你想達到什麼是很可能的,但你必須改變你的jQuery選擇和方法選擇的JavaScript代碼和方法,如:

,如果你有$('#selector')其表示,選擇id所以你可以做的是:

改變這一點:

$('#selector') 

這樣:

document.getElementById('selector') 

同樣適用於像的方法:

.val() 

.value 

所以改變該:

$('#selector').val() 

這樣:

document.getElementById('selector').value; 

,您可以將jQuery的.text()更改爲javascript的.innerHTML

和ofcourse $(document).ready(function() {....});必須改變,以JavaScript的window.onload=function(){...};

+0

感謝您花時間回覆,讚賞:)但是正如我在下面提到的「mplugjan」,當我做了他已經在下面的代碼中應用的更改時,我得到一個空白屏幕... – nadz 2013-04-25 10:16:20

相關問題