2014-07-04 2 views
0

클릭하면 텍스트 입력 필드 (id = "textName")에서 이름 배열의 임의의 이름을 인쇄하는 버튼을 만들려고합니다. 지금까지 아무 문제 없어!JS - 배열의 합계 목록 (텍스트 필드의 합계 이름)

그런 다음 모든 이름을 다른 tex 필드 (id = "addName")에서 서로 합한 다음 모든 클릭을 업데이트하여 새 이름을 추가해야합니다. 혼수 상태, bmw, masaserati, ferrari로 구분 된 이름 목록을 갖는 것).

이것은 지금까지 제 코드입니다. 여기

<input type="button" id="randomName" value="name" style="position:relative; top:200px; left:50px;" /> 


<input type="text" id="textName" value="" style="position:relative; top:200px; left:100px; width:200px;" /> 

<input type="text" id="addName" value="" style="position:relative; top:300px; left:0px; width:80%;" /> 



<script > 



var Names = ["Saab", "Volvo", "BMW", "Fiat", "Ferrari", "Maserati", "Audi"]; 


document.getElementById('randomName').onclick = function() { 
    //add code here 
    var NumberRandom = Math.floor((Math.random() * 7) + 1); 
    var allNames = Names[NumberRandom]; 

    $('#textName').val(allNames); 

    console.log(NumberRandom); 


    for(var i=0; i<NumberRandom; i++){ 

       var total = Names[NumberRandom] += 1 ; 

        console.log(total); 

        $('#addName').val(total); 

         return; 
        } 

       } 

</script> 

바이올린 :

http://jsfiddle.net/salvonostrato/m2Upg/

모든 addName 입력에 혼수 상태로 구분을 클릭 합 이름을 가지고하는 방법을 어떤 생각?

+0

당신이 "이름이 서로 합 필요"이란 무엇을 의미합니까? Summing은 대개 숫자로 이루어집니다. – Bergi

답변

1

은 여기 fiddle

var Names = ["Saab", "Volvo", "BMW", "Fiat", "Ferrari", "Maserati", "Audi"]; 


document.getElementById('randomName').onclick = function() { 
    //add code here 
    var NumberRandom = Math.floor((Math.random() * Names.length)); 
    var allNames = Names[NumberRandom]; 

    $('#textName').val(allNames); 

    console.log(NumberRandom); 

    var curVal = $("#addName").val() 
    if (curVal.length > 0) { 
     curVal += ',' 
    } 
    curVal += allNames 
    $("#addName").val(curVal) 

} 

주 난수 (6 행)의 생성의 변화와 하단 (라인 13 ~ 18)에서 curVal 변화의 고정 된 버전입니다.

+0

여기에 답을 입력하십시오 (연결은 괜찮습니다). 링크가 끊어지면 나중에 참조 할 필요가 없습니다. –

+0

이름을 계산하는 방법이 있습니까? 나는 "curVal.length"를 사용하려고 노력하고 있지만 대신 문자 수를 더한다. – SNos

+0

이름을 세는 방법은 무엇입니까? "curVal.length"를 사용하려고하지만 문자 수를 더합니다. – SNos

0

확인하시기 바랍니다이 fiddle

var Names = ["Saab", "Volvo", "BMW", "Fiat", "Ferrari", "Maserati", "Audi"]; 


document.getElementById('randomName').onclick = function() { 
//add code here 
var NumberRandom = Math.floor((Math.random() * 6) + 1); 
var allNames = Names[NumberRandom]; 

$('#textName').val(allNames); 

console.log(NumberRandom); 


for (var i = 0; i < NumberRandom; i++) { 

    var total = Names[NumberRandom] += 1; 
    var prev = $('#addName').val(); 
    console.log(prev); 
    if (prev != '') { 
     prev += ',' + total; 
    }else{ 
     prev = total; 
    } 

    $('#addName').val(prev); 

    return; 
} 

} 
+0

당신은 자바 스크립트 ('! =')에서 하나가 아닌 equals를해서는 안됩니다. 또한 비어 있지 않은 문자열을 검사하기 위해서는'string.length> 0'을 수행하면된다. – Strikeskids