2013-07-17 3 views
0

JavaScript, HTML 및 jQuery Mobile을 사용하여 PhoneGap 응용 프로그램을 작성합니다.JavaScript에서 양식 작업을 사용하지 않고 양식을 제출하는 가장 좋은 방법

모든 HTML은 동일한 파일에 있으며 <div data-role="page"> 페이지로 분리되어 있습니다.

여러 페이지는 하나 이상의 텍스트/선택 입력 및 제출 버튼을 포함하는 양식을 가지고 있습니다.

제출은 전통적인 양식 제출 버튼이 아니지만 onClick을 사용하는 버튼은 많은 것을 할 수있는 JavaScript 기능을 실행합니다.

  1. 버튼을 눌러 기능을 실행 한 후, 양식을 지우 :

    나는이 가지고있는 형태는 기능을 사용하고자합니다.

  2. 경우에 따라 함수가 페이지를 변경해야합니다.
  3. 입력 중 하나의 입력 버튼은 양식을 제출해야합니다 (기능 활성화).

양식 HTML 태그를 사용해야합니까? 그렇다면 행동에 무엇을 사용해야합니까? 양식을 지우는 방법? 등

답변

0

양식 태그는 마크 업에 유용하기 때문에 계속 사용할 수 있습니다.

는 그냥 버튼

type="button" 

그렇지 않으면 버튼이 기본적으로 양식을 제출합니다 속성이 있는지 확인하십시오. 당신은 당신이 나쁜 시간을 가질거야 "제출"입력 유형 =에 온 클릭을 결합하려는 경우

function resetForm() { 
    $('#form').each(function(){ 
      this.reset(); 
    }); 
} 
+0

어떻게 양식을 재설정? 폼에 enter 키를 눌러 제출 단추를 클릭하는 방법 – CaptainNemo

+0

이 경로를 사용하는 경우 각 기능에 대해 하나씩 여러 개의 버튼이 있어야 할 것입니다. –

0

:

양식을 재설정합니다.

불행히도 false를 반환하거나 해당 버튼을 클릭하면 e.preventDefault가 전송 된 경우에도 양식에서 제출 트리거를 전송하므로 onClick 코드가 완료되면 제출됩니다.

예 : 당신은 아마 수행 할 작업을

<form action="woot.php" method="POST"> 
    <input type="submit" value="submit" onClick="alert('You clicked me! How could you?! It's cool the form will still go to woot.php. return FALSE wont help you either.'); return FALSE;"> 
</form> 

:

<form action="woot.php" method="POST"> 
    <input type="submit" value="Submit" onSubmit="alert('You aint goin nowhere!'); return FALSE;"> 
</form> 

당신은 어떻게해야하나요 :

<form action="woot.php" method="POST"> 
    <input type="button" value="Button" onClick="alert('Away with you!'); window.location = 'http://www.google.com/';"> 
    <input type="button" value="Button" onClick="someCoolFunction();"> 
</form> 
+0

woot.php이란 무엇입니까? 왜 POST? – CaptainNemo

+0

죄송합니다. 저는 PHP 웹 개발자이고 woot.php는 양식이 데이터 처리를 위해 제출되는 파일입니다. POST는 데이터를 woot.php로 가져 오는 방법입니다. 전에 phoneGap을 사용한 적은 없지만 자신의 사이트와 제품을 간략하게 살펴본 후에

태그가 필요하지 않을 수도 있음을 깨달았습니다. JSfiddle을 사용하여 약간 주석을 달았습니다. – MonkeyZeus

0

나는 당신이 원하는 특히, type="button"를 사용하지 것이다 사용자가 enter을 누를 때 양식을 제출할 가장 좋은 기회를 가질 수 있습니다.

은 일반 양식을 사용 <input type="submit"> 다음 자바 스크립트 :

$('form').submit(function(e) { 
    // all your form handling here; 
    if (your_form_was_validated_and_handled) { 
    $('input[type!="submit"]').val(''); 
    } 
    e.preventDefault(); 
}); 

일반 바이올린 : http://jsfiddle.net/

+0

나는 그 질문을 오해했다. 저는 그가 양식을 제출하기를 원하지 않는다고 생각했습니다. –

관련 문제