2010-12-16 5 views
1

이것은 누군가에게 간단 할 수도 있지만 초보자인데 사방을 검색했습니다. 자바 스크립트 함수가 있습니다.php 또는 html에서 javascript 함수 호출에 대한 도움말

mkfile : function(fm) { 

나는 이것을 클릭 명령에서 실행하려고 시도하고있다.

아이디어가 없습니다. 죄송합니다, 임씨는 이것에 약간의 돈을 벌었지만, 모든 것을 시도했지만 아무 일도 일어나지 않았습니다.

+1

의 onclick = "기능 (ARG);" 작동하지 않습니까? 더 많은 코드를 게시해야합니다. – Robert

+1

자바 스크립트 스 니펫이 이해가되지 않습니다. 구문 상 유효하지 않습니다. –

+0

매트, 자바 스크립트의 네임 스페이스라고 생각합니다. – mythicalprogrammer

답변

3

다음과 같이 onclick 속성을 사용하십시오 : <a onclick="javascript:mkfile()" >Bob</a>. 전에 javascript:을 가지고있을 필요는 없지만 IE와 같은 브라우저에서 도움이됩니다 (시작하지 마세요). 그런데

, 코드가 잘못, 그것은
function mkfile(fm) { 
    // your code 
} 

당신이 이해하지 않는 경우 물어 hesistate하지 마십시오해야합니다. 더 많은 코드없이

2

당신이 잘못하고있는 것을 알 어렵지만, 일반적으로는 다음과 같이 진행됩니다 이벤트 처리기를 바인딩의 여러 가지 방법이 있습니다

<button id="foo">Click me!</button> 

<script type="text/javascript"> 

    document.getElementById('foo').onclick = function() { 
     alert('Hello World!'); 
    } 

</script> 

DEMO

.

다른 사람이 언급 한 것처럼
+0

'from'HTML 또는 PHP가 아니지만 여전히 유효합니다. (그리고 그것은 질문의 코드를 포함하거나 포함하지 않습니다.) – Fred

+1

@Fred : 1) HTML 코드에 이벤트 처리기를 작성하는 것은 구식이므로 어쨌든 더 이상 수행하지 않아야합니다. 게다가 HTML *에서 JavaScript를 호출하면 해석이 매우 편리합니다. 2) PHP *에서 javascript 함수를 호출 할 때 * 도움말을 읽으면 OP에 DOM 스크립팅에 대한 지식이 거의없고 가장 좋은 방법을 알지 못한다고 가정합니다. –

+0

완전히 동의했습니다. – Fred

1

, 그것의 더 보지 않고 코드에 어떤 문제가 있는지보고 정말 불가능) 나는 quirksmode.org - Introduction to Events, MDC - Event handlersMDC - The DOM and JavaScript을 읽고도 주어진 링크를 따라하는 것이 좋습니다. 하지만 (그 name:value로) 게시 된 작은 부분이 JS 디자인의 다소 일반적인 패턴입니다 둘 다, 단지 상황의 몇 유효 : 이것은 당신이 가지고있는 경우

// Pattern one 
var makeMyObject = function() { 
    var privateVar = 'a private member'; 
    var privateMethod = function() {}; 
    var objOut = { 
     mkDir:function() {/*more code*/}, 
     mkFile:function() {/*more code*/}, 
     delFile:function() {/*more code*/} 
    }; 
    return objOut; 
}; 
myObject = makeMyObject(); 
myObject.mkFile(); 

// Pattern two 
var myObject = { 
    mkDir:function() {/*more code*/}, 
    mkFile:function() {/*more code*/}, 
    delFile:function() {/*more code*/} 
}; 
myObject.mkFile(); 

이 방법 당신은 바인딩 할 수 있습니다 HTML 코드에 온 클릭이는 다음과 같습니다

<a href="/some_page.html" onclick="myObject.mkFile()">Click here</a> 

아니면 JS에서

,

domMyAnchorElement.onclick = myObject.mkFile; // Note there are no parens because you are binding the function, not invoking it. 
+0

당신도 이것을 할 수 있다는 것을 알지 못했습니다! 감사! – Fred

+0

아직도 작동하지 않습니다. 나는 더 많은 정보를 추가했다. – simon

+0

아직 작동하지 않습니다. 나는 그것을 여기 붙이고 싶다. 방법이 있나. 여기서 js 스크립트를 볼 수 있습니다. 여기에 mkfile 함수가 표시됩니다. http://elrte.org/redmine/projects/elfinder/repository/revisions/master/entry/src/js/elFinder.ui.js elfinder를 본 적이 있는지 알 수는 없지만 꽤 좋아 보인다. – simon