2014-12-01 2 views
0

test1.htmlкак я могу использовать данные, как только я расшифрую URL?

<html> 

<head> 
    <script type="text/javascript"> 
function tally() 
{ 
    var scrt_var = 10; 


    var Dpoint, Ipoint, Hpoint, Apoint; 
    var party_Score = ['Dpoint', 'Ipoint', 'Hpoint', 'Apoint']; 
    var D, I, H, A; 
    var value_Point; 
    var type_Choice; 
    var tag_Choice; 


    var inputs = document.getElementsByTagName("input"), 
     iLength = inputs.length, 
    D = I = H = A = 0; 

    for (i = 0; i < iLength; i++) if (inputs[i].checked) 
    { 
     value_Point = parseInt(inputs[i].value); 
     if (inputs[i].name.search('D') > -1){ D += value_Point; } 
     if (inputs[i].name.search('I') > -1){ I += value_Point; } 
     if (inputs[i].name.search('H') > -1){ H += value_Point; } 
     if (inputs[i].name.search('A') > -1){ A += value_Point; } 
    } 
Dpoint = D; 
Ipoint = I; 
Hpoint = H; 
Apoint = A; 

location.href = "test3.html?D="+ Dpoint + "&I=" + Ipoint + "&H=" + Hpoint + "&A=" + Apoint; 


} 
// ]]> 
</script> 
</head> 

<form method="Get" action="test3.html"> 
<table> 
<tr> 
<td>question1</td> 
<td><input type="radio" name="D1" value="1"> 1 </td> 
<td><input type="radio" name="D1" value="2"> 2 </td> 
<td><input type="radio" name="D1" value="3"> 3 </td> 
<td><input type="radio" name="D1" value="4"> 4 </td> 
<td><input type="radio" name="D1" value="5"> 5 </td> 
<td><input type="radio" name="D1" value="6"> 6 </td> 
<td><input type="radio" name="D1" value="7"> 7 </td> 
<td><input type="radio" name="D1" value="8"> 8 </td> 
<td><input type="radio" name="D1" value="9"> 9 </td> 
<td><input type="radio" name="D1" value="10"> 10 </td>    
</tr> 
<tr> 
<td>question2</td> 
<td><input type="radio" name="I1" value="1"> 1 </td> 
       <td><input type="radio" name="I1" value="2"> 2 </td> 
       <td><input type="radio" name="I1" value="3"> 3 </td> 
       <td><input type="radio" name="I1" value="4"> 4 </td> 
       <td><input type="radio" name="I1" value="5"> 5 </td> 
       <td><input type="radio" name="I1" value="6"> 6 </td> 
       <td><input type="radio" name="I1" value="7"> 7 </td> 
       <td><input type="radio" name="I1" value="8"> 8 </td> 
       <td><input type="radio" name="I1" value="9"> 9 </td> 
       <td><input type="radio" name="I1" value="10"> 10 </td> 
</tr> 
<tr> 
<td>question3</td> 
    <td><input type="radio" name="H1" value="1"> 1 </td> 
       <td><input type="radio" name="H1" value="2"> 2 </td> 
       <td><input type="radio" name="H1" value="3"> 3 </td> 
       <td><input type="radio" name="H1" value="4"> 4 </td> 
       <td><input type="radio" name="H1" value="5"> 5 </td> 
       <td><input type="radio" name="H1" value="6"> 6 </td> 
       <td><input type="radio" name="H1" value="7"> 7 </td> 
       <td><input type="radio" name="H1" value="8"> 8 </td> 
       <td><input type="radio" name="H1" value="9"> 9 </td> 
       <td><input type="radio" name="H1" value="10"> 10 </td> 
</tr> 
<tr> 
       <td><label> question4 </label></td> 
       <td><input type="radio" name="A1" value="1"> 1 </td> 
       <td><input type="radio" name="A1" value="2"> 2 </td> 
       <td><input type="radio" name="A1" value="3"> 3 </td> 
       <td><input type="radio" name="A1" value="4"> 4 </td> 
       <td><input type="radio" name="A1" value="5"> 5 </td> 
       <td><input type="radio" name="A1" value="6"> 6 </td> 
       <td><input type="radio" name="A1" value="7"> 7 </td> 
       <td><input type="radio" name="A1" value="8"> 8 </td> 
       <td><input type="radio" name="A1" value="9"> 9 </td> 
       <td><input type="radio" name="A1" value="10"> 10 </td> 
     </tr><!-- 14 --> 
      <tr> 
       <td><label> question5 </label></td> 
       <td><input type="radio" name="D2" value="1"> 1 </td> 
       <td><input type="radio" name="D2" value="2"> 2 </td> 
       <td><input type="radio" name="D2" value="3"> 3 </td> 
       <td><input type="radio" name="D2" value="4"> 4 </td> 
       <td><input type="radio" name="D2" value="5"> 5 </td> 
       <td><input type="radio" name="D2" value="6"> 6 </td> 
       <td><input type="radio" name="D2" value="7"> 7 </td> 
       <td><input type="radio" name="D2" value="8"> 8 </td> 
       <td><input type="radio" name="D2" value="9"> 9 </td> 
       <td><input type="radio" name="D2" value="10"> 10 </td> 
      </tr><!-- 15 --> 
      <tr> 
<tr> 
<td colspan=2> 
<a href="javascript:tally()"> press here</a> 
</td> 
</tr> 
</table> 
</form> 
</html> 

test3.html

<!DOCTYPE html> 
<html> 
<head> 
<script LANGUAGE="JavaScript"> 
function getParams(){ 
var idx = document.URL.indexOf('?'); 
var params = new Array(); 
if (idx != -1) { 
var pairs = document.URL.substring(idx+1, document.URL.length).split('&'); 
for (var i=0; i<pairs.length; i++){ 
nameVal = pairs[i].split('='); 
params[nameVal[0]] = nameVal[1]; 
} 
} 
return params; 
} 
params = getParams(); 

D = unescape(params["D"]); 
I = unescape(params["I"]); 
H = unescape(params["H"]); 
A = unescape(params["A"]); 

//check here 
    alert(D);// the data is passed here i am sure 

document.getElementById('Dtag').style.width = D + 'px'; 
document.getElementById('Itag').style.width = I + 'px'; 
document.getElementById('Htag').style.width = H + 'px'; 
document.getElementById('Atag').style.width = A + 'px'; 

// i cant use the D here to change my style and width , i have the D data but i cant use it 

</script> 

<style type="text/css"> 
body { 
    font: .8em Calibri, sans-serif; 
    margin: auto; 
    width: 800px; 
} 
label { 
    display: block; 
    float: left; 
    width: 100px; 
} 
br { 
    clear: left; 
} 
.bar { 
    background: #999; 
    float: left; 
    height: 16px; 
    margin: 0 0 5px 10px; 
    padding: 1px; 
    width: 250px; 
} 
#Dtag, #Itag, #Htag, #Atag{ 
    background-color: #039; 
    height: 16px; 
} 

</style> 

</head> 

<body> 
<div id="results"> 
    <h2>Your result: <span id="type"></span></h2> 
    <p><big>“ <em id="tagline"></em> ”</big></p> 
    <label><strong>fish</strong></label><div class="bar"><div id="Dtag"></div></div><br> 
    <label><strong>dog</strong></label><div class="bar"><div id="Itag"></div></div><br> 
    <label><strong>cat</strong></label><div class="bar"><div id="Htag"></div></div><br> 
    <label><strong>Bug</strong></label><div class="bar"><div id="Atag"></div></div><br> 

</body> 


</html> 

я есть успешный обход на радио данных на следующей странице, но почему-то я не могу использовать его изменил мой стиль и использовать данные, я имею в java script, что я сделал неправильно? вы можете попробовать скопировать и пропустить этот код.

+0

Похоже, вы должны начать изучать язык на сервере, вместо этого вы используете неправильный инструмент. – adeneo

+0

Я не уверен, что вы хотели бы сделать, но если вам нужно иметь данные с одной страницы в другой. Вы могли бы взглянуть на localstorage или sessionstorage. Если это не работает, вы действительно должны использовать сценарий на стороне сервера. Пожалуйста, объясните, что вы хотите делать с кодом. – AWolf

+0

Мое намерение состоит в том, чтобы сделать оценку на странице вопросов по радио, тогда создание точки графика зависит от оценки пользователя, я смотрю по всему Интернету, это единственный способ, которым я нашел это легко, может ли кто-нибудь из вас показать мне далеко ? Я тоже смотрел sessionstorage, но они говорят, что некоторые броверы потерпят неудачу, если у них нет поддержки. Как это сделать? –

ответ

0

Действительно, это не лучший способ передать данные с одной страницы на другую, но вы можете сделать эту работу. На самом деле, ваша ошибка в том, что вы запрашиваете элементы документа до их создания. Чтобы преодолеть это, вы можете переместить свой сценарий в нижнюю часть страницы или обернуть его в нечто вроде

document.addEventListener("DOMContentLoaded", function(event) { 
    ....... 
    }); 
+0

мое намерение состоит в том, что у меня есть общая точка радиосвязи и переход на следующую страницу, создавая график для радио-оценки пользователем. –

+0

document.addEventListener ("DOMContentLoaded", function (event) {document.getElementById ('Dtag'). Style.width = D + 'px'; document.getElementById ('Itag'). Style.width = I + ' px '; document.getElementById (' Htag '). style.width = H +' px '; document.getElementById (' Atag '). style.width = A +' px ';}); так я могу добавить так? –

+0

благодарю, что у меня есть работа, кстати, какой лучший способ передать эти данные на другую сторону? пожалуйста, покажите мне способ сделать это. благодарю вас за вашу помощь. –

Смежные вопросы