2010-02-13 204 views
1

我怎麼可以把這個代碼的Javascript腳本需要服務器端

<script> 
var arr = [<%= myArray %>+<%= my2Array %>]; 
var sorted_arr = arr.sort(); 
var results = []; 
for (var i = 0; i < arr.length - 1; i += 1) { 
     if (sorted_arr[i + 1] == sorted_arr[i]) { 
       results.push(sorted_arr[i]); 
     } 
} 
document.write(results +"<br />"); 
</script> 

並將其轉換爲<%以上腳本%>和保持功能?

爲什麼在腳本代碼的腳本工作,但不是當我把它放在<%%>

<% 
var arr = [myArray+my2Array]; 
var sorted_arr = arr.sort(); 
var results = []; 
for (var i = 0; i < arr.length - 1; i += 1) { 
     if (sorted_arr[i + 1] == sorted_arr[i]) { 
       results.push(sorted_arr[i]); 
     } 
} 
%> 
<%= results %> 

如果我使用這樣的結果返回爲空

我懷疑理由爲什麼它不工作是因爲結果值沒有得到填充...在腳本版本它得到的時間來填充和循環

+0

服務器端腳本沒有用JavaScript編寫的。你用什麼語言編寫服務器腳本? – 2010-02-13 08:45:36

+0

我使用asp和javascript – 2010-02-13 08:48:23

+0

myArray和my2Array包含什麼? - 他們是JScript數組嗎?我不認爲你可以添加它們 – meouw 2010-02-13 08:53:05

回答

1

如果你想運行你的代碼服務器端,你需要改變行

var arr = [myArray+my2Array]; 

var arr = (myArray+','+my2Array).split(','); 
+0

var arr =(myArray + my2Array).split(','); var sorted_arr = arr.sort(); var results = []; 爲(VAR I = 0; I 2010-02-13 09:17:08