2013-09-24 3 views
-2

나는 functions을 사용했지만이 문제를 해결할 수 없습니다.함수에서 인수를 쓰는 방법은 무엇입니까?

내가 한 것은 함수를 만든 다음 문서 클래스 또는 ID에서 제공하는 값을 사용하고 작업을 수행하도록 만들었습니다. 작업이 완료되면 데이터를 다시 보내십시오! 그것은 효과가있다!

이제이 함수가 두 div에 대해 생성되도록하고 싶습니다. 첫 번째 함수는 잘 작동합니다. 문제는 두 번째 문제입니다. 함수가 정확합니다. 결과를 쓰는 동안 다른 버그가 있습니다. 그대로 내가 그것을 사용하는 경우

function time_untilCom(id) { 
    var Time2 = Date.parse(document.getElementById("time_" + 2).value); 
    var curTime2 = new Date(); 
    var timeToWrite2 = ""; 
    var seconds2 = Math.floor((curTime2 - Time2)/(1000)); 
    if (seconds2 > 0 && seconds2 < 60) {// seconds.. 
     timeToWrite2 = seconds2 + " seconds ago"; 
     $('#update_' + 2).html(seconds2); 
     $('#jstime_' + 2).html(timeToWrite2 + " <b>Time that was captured!</b>"); 
    } 
} 

, 그것은 작동합니다

여기 내 코드입니다! 나는이

("time_" + 2), ("#update_" + 2), ("#jstime" + 2)("time_" + id), ("#update_" + id), ("#jstime_" + id)로 교체 할 때 문제가 온다.

내가 원하는 것은이 기능이 div에 적용되는 공통 ID와 함께 제공되고 해당 ID를 사용하여 시간 값을 얻고 초 단위로 변환하고 다른 것을 수행 한 다음 나를 제공한다는 것입니다. 인수에있는 id를 가진 해당 요소에 결과가옵니다.

function 위대한 작품은 나에게 결과를 제공합니다. 하지만 그 문제는 id과 관련이 없습니다. 또는 그 다음에 보내지는 경우 적용되지 않습니다. 여기에 무슨 문제가있을 수 있습니까? 그리고 seconds도 신경 쓰지 마라.

정말 짧은 코드에 대한 매우 유감스럽게 생각한다 :

는 실례, 내가 너무 function에 대한 코드를 작성하고 있었다. 그러나 전기가 떨어졌습니다!

코드는 다음과 같습니다. onload="time_untilCom('2') 이것은 이것을 실행하는 방법입니다.

주 코드에서 한번 실행하면 다음과 같이 실행됩니다. ASP.NET Web Pages을 사용하고 있으므로 onload="time_untilCom(@row.Id)을 사용합니다. 데이터베이스에서 ID를 작성하기 위해 서버 측 코드를 사용하게됩니다. 그리고 ID를 통해 시간을 업데이트하기 위해 div를 사용자에게 보냅니다!

내가 이해에서
+0

''time _ "+ 2'는''time_2'이어야합니까?''time _"+ 2''NAN '이겠지요. – steo

+1

어쨌든'time_2'가됩니다. 그것을 쓰는 특별한 방법이다 – devnull69

+0

함수를 어떻게 호출하나요? – Shomz

답변

0

, 당신은 아마

var Time2 = Date.parse(document.getElementById(id).value); 

과 두 번째 줄

var Time2 = Date.parse(document.getElementById("time_" + 2).value); 

을 대체 할 그리고 마지막에 당신은 또한 당신이 전달하는

$('#'+id).html(timeToWrite2 + " <b>Time that was captured!</b>"); 
+0

아니요 형제가 아닙니다. 필자가 작성한 것을 쓰고 싶습니다. 문제는 단지 값 f를 얻는 것입니다. rom 인수. –

0

을 사용할 수 있습니다 "id"를 인수로 사용하지만 함수 내부에서 사용하지 마십시오. 내 질문은 : 귀하의 예제에서 id 속성에 부록으로 2을 사용하고 있습니다. 함수의 id 매개 변수로 갖고 자하는 각각 2 (또는 다른 숫자)이 있습니까?

그럼 그냥 + id

function time_untilCom(id) { 
    var Time2 = Date.parse(document.getElementById("time_" + id).value); 
    var curTime2 = new Date(); 
    var timeToWrite2 = ""; 
    var seconds2 = Math.floor((curTime2 - Time2)/(1000)); 
    if (seconds2 > 0 && seconds2 < 60) {// seconds.. 
    timeToWrite2 = seconds2 + " seconds ago"; 
    $('#update_' + id).html(seconds2); 
    $('#jstime_' + id).html(timeToWrite2 + " <b>Time that was captured!</b>"); 
    } 
} 

편집하여 코드의 각 + 2을 대체 할 수있는 : 알려주세요 어디에 어떻게 정확히 time_untilCom를 호출합니까? 이드를 거기에 보냈습니까?

+0

네 말이 맞아! 가장 중요한 점은'2'를'id'로 대체하여 함수를 두 번 쓰고 싶지 않았기 때문입니다. 그래서 방금 문제를 언급했습니다. 예 2는 'id'가 갖는 것입니다. 2는 서버가 해당 div에 대해 작성하는 다른 ID로 대체됩니다. 그게 내가 뭘 만들지. 이 문제는'2'를'id'로 대체 할 때 발생합니다. 내가 추측하는 바는'id '가 제대로 전달되지 않는다는 것입니다. divs에서 응답을받지 않기 때문에 Atleast 오류가 발생하면 div는 'error' 텍스트로 업데이트됩니다! 질문을 편집했습니다. 한번보세요 :) –

관련 문제