2017-02-04 18 views
0

URLに追加するチェックボックスと変更されたURLを使用するボタンを使用して、リダイレクトリンクを変更しようとしています。私はまだJavaScriptの初心者ですが、どこが間違っているのか少し迷っています。リダイレクト場所onClickを変更します。

マイコード:以下のコードの変更で現在

<html> 

<form> 

<div class="element1">" 
<input type="checkbox" name="name1" id="id1" value="val1" class="hidden" ></label></div> 

<div class="element2">" 
<input type="checkbox" name="name2" id="id2" value="val2" class="hidden" ></label></div> 

<div class="element3">" 
<input type="checkbox" name="name3" id="id3" value="val3" class="hidden" ></div> 


<div class="element00"> 
<input type="button"onclick="myFunction(calculatedUrl());" name="button1" id="itemA" value="valA" ></label></div> 

</form> 

<script> 
function calculatedUrl(){ 
    var totalString="" 
    var link1="some text" 
    var link2="more text" 
    var link3="something else" 

    if(document.getElementById("id1").checked == true){ 
    var totalString = totalString.concat(link1); 

} 

if(document.getElementById("id2").checked == true){ 
     var totalString = totalString.concat(link2); 


} 

if(document.getElementById("id3").checked == true){ 
     var totalString = totalString.concat(link3); 

} 
    return totalString 

} 

function myFunction(id){ 
var original="http://myoriginalurl" 
var addition=id 
var new=original.concat(addition) 




//for testing 
    window.alert(new) 

    document.getElementById("test1").innerHTML= new; 


//for the real redirecting not active for now 
//window.location=new 
          } 




</script> 


</html> 

答えて

0

<html> 
 

 
<form> 
 

 
<div class="element1">" 
 
<input type="checkbox" name="name1" id="id1" value="val1" class="hidden" ></label></div> 
 

 
<div class="element2">" 
 
<input type="checkbox" name="name2" id="id2" value="val2" class="hidden" ></label></div> 
 

 
<div class="element3">" 
 
<input type="checkbox" name="name3" id="id3" value="val3" class="hidden" ></div> 
 

 

 
<div class="element00"> 
 
<input type="button"onclick="myFunction(calculatedUrl());" name="button1" id="itemA" value="valA" ></label></div> 
 

 
</form> 
 

 
<script> 
 
function calculatedUrl(){ 
 
    var totalString="" 
 
    var link1="some text" 
 
    var link2="more text" 
 
    var link3="something else" 
 

 
    if(document.getElementById("id1").checked == true){ 
 
    var totalString = totalString.concat(link1); 
 

 
} 
 

 
if(document.getElementById("id2").checked == true){ 
 
     var totalString = totalString.concat(link2); 
 

 

 
} 
 

 
if(document.getElementById("id3").checked == true){ 
 
     var totalString = totalString.concat(link3); 
 

 
} 
 
    return totalString 
 

 
} 
 

 
function myFunction(id){ 
 
var original="http://myoriginalurl" 
 
var addition=id 
 
console.log(id); 
 
var n =original.concat(addition) 
 

 

 

 

 
//for testing 
 
    window.alert(n) 
 

 
    document.getElementById("test1").innerHTML= n; 
 

 

 
//for the real redirecting not active for now 
 
//window.location=new 
 
          } 
 

 

 

 

 
</script> 
 

 

 
</html>

newnewurlに - newは予約語です。

function myFunction(id){ 
var original="http://myoriginalurl" 
var addition=id 
var newurl =original.concat(addition) 
//for testing 
window.alert(newurl) 
document.getElementById("test1").innerHTML= newurl; 
//for the real redirecting not active for now 
//window.location=new 
} 

私はid=test1とタグを参照してくださいいけないので、あなたは、コンソールのブラウザではnull例外が発生します。それに基づいてタグを追加してテストします。

スニペットを追加しました。確認してください。

+0

私はNEWURLする新しいを変更していないが、まだ何の変化。アラートは表示されず、テスト段落は更新されません。 –

+0

私はスニペットを追加しました。valAボタンをクリックすると警告が表示されます – Thennarasan

+0

id = test1の段落があります。質問コードに貼り付けるのを忘れました。それはmyFunctionをまったく実行していないようです。それはcomputedUrl()のどこかで破損しています。ご協力ありがとうございました! –

0

<html> 
 

 
<form> 
 

 
<div class="element1">" 
 
<input type="checkbox" name="name1" id="id1" value="val1" class="hidden" ></label></div> 
 

 
<div class="element2">" 
 
<input type="checkbox" name="name2" id="id2" value="val2" class="hidden" ></label></div> 
 

 
<div class="element3">" 
 
<input type="checkbox" name="name3" id="id3" value="val3" class="hidden" ></div> 
 

 

 
<div class="element00"> 
 
<input type="button"onclick="myFunction(calculatedUrl());" name="button1" id="itemA" value="valA" ></label></div> 
 

 
</form> 
 

 
<script> 
 
function calculatedUrl(){ 
 
    var totalString="" 
 
    var link1="some text" 
 
    var link2="more text" 
 
    var link3="something else" 
 

 
    if(document.getElementById("id1").checked == true){ 
 
    var totalString = totalString.concat(link1); 
 

 
} 
 

 
if(document.getElementById("id2").checked == true){ 
 
     var totalString = totalString.concat(link2); 
 

 

 
} 
 

 
if(document.getElementById("id3").checked == true){ 
 
     var totalString = totalString.concat(link3); 
 

 
} 
 
    return totalString 
 

 
} 
 

 
function myFunction(id){ 
 
var original="http://myoriginalurl" 
 
var addition=id 
 
console.log(id); 
 
var n =original.concat(addition) 
 

 

 

 

 
//for testing 
 
    window.alert(n) 
 

 
    document.getElementById("test1").innerHTML= n; 
 

 

 
//for the real redirecting not active for now 
 
//window.location=new 
 
          } 
 

 

 

 

 
</script> 
 

 

 
</html>

関連する問題