2013-08-19 6 views
0

У меня есть эта функция на HTML форме, форма сценария есть этаКак я обработать эту форму в одиночку

<script type="text/javascript"> 
      var conf = { 
      isVip:false, 
      isMem:false 
     }; 
    </script> 

и вот кнопка, кнопка обрабатывать два формы в HTML, вот кнопка.

<li class="current"> 
    <a href="#" onclick="submitAction('process.php')">免费邮箱登录</a> 
    </li> 
    <li> 
<a href="#" onclick="submitAction('process.php')"><span class="vip"></span>VIPSubmit</a> 
    </li> 
<a href="#" class="loginBtn" 

Вот форма

 <form name="vip_login" method="post" action="process.php"> 
     <input tabindex="1" id="vipname" type="text" class="username" name="username" value=""/><span class="vipDomain">@name.com</span> 
     <input tabindex="2" id="vippassword" type="password" class="password" name="password" value=""/> 

Мой вопрос, как я делаю баттона обрабатывать мою форму самостоятельно и передавать данные на внешние функции process.php.

+1

Что вы пробовали далеко? Вы отметили этот вопрос с помощью jQuery, но не показываете никакого кода jQuery или не упоминаете ничего о jQuery. –

+0

Похоже, вы должны заглянуть в ajax, если я понимаю – ContextSwitch

+0

Как выглядит функция 'SubmitAction' у вас на ваших ссылках? – EmmyS

ответ

0

Прежде всего, у вас есть ссылки, а не кнопки. Вам нужно сделать кнопки с идентификаторами.

<li class="current"> 
    <input id="btn1" type="button" value="免费邮箱登录"></input> 
</li> 
<li> 
    <input id="btn2" type="button" value="VIPSubmit"><span class="vip"></span></input> 
</li> 

Во-вторых, вы можете использовать jQuery/AJAX для отправки формы с помощью этих кнопок. Вам также нужно добавить идентификатор в свою форму. Ниже я сделал идентификатор так же, как и атрибут name.

$(document).ready(function() { 
    $("#btn1").click(function() { 
     $("#vip_login").submit(function() { 
      $.ajax({ 
       type: "POST", 
       data: $(this).serialize(), 
       cache: false, 
       url: "process.php", 
       success: function(data) { 
        $("#id on process.php").html(data); //If setting in process.php 
        window.alert("Data send"); 
       } 
      }); 
      return false; 
     }); 
    }); 
}); 

Также обратите внимание: с помощью AJAX вам не требуется «действие», представленное в вашей форме.

<form name="vip_login" id="vip_login" method="post" action=""> 
+0

Я пробовал это, но когда кнопка отправки не обрабатывает process.php, он все еще работает как предыдущий параметр ... stanley

+0

Как вы получаете доступ к данным на process.php ? Это может быть проблемой. – Tricky12

0

Во-первых, дать Сформировать id:

<form id="vip_login" method="post" action="process.php"> 

Следующая, скачать JQuery, если вы уже не имеете, а затем настроить onclick из href быть таким:

<a href='#' class='loginBtn' onclick="$('#vip_login').submit();" ... 

и это заставит представить форму.

0

Это правильно

<form name="vip_login" method="post" action="process.php"> 

Но вам нужно добавить кнопку отправки, или использовать некоторые JavaScript, чтобы сделать это, как

document.vip_login.submit()

Вы можете добавить предыдущий после того, как все проверки являются ОК.

0
<a href="#" class="loginBtn" onclick="document.forms['vip_login'].submit();"></a> 
0

добавьте id к вашему <form> так было бы что-то вроде этого:

<form id="vip_login" name="vip_login" method="post" action="process.php"> 

Затем установите атрибуты на кнопку, чтобы быть похожим на это:

<a href="#" class="loginBtn" onclick="document.getElementById('vip_login')).submit();">Submit</a> 

Это позволит получить его работа, хотя более элегантный способ сделать это - добавить кнопку submit в этой форме, добавив следующий элемент в ваш <form>:

<input type="submit" value="Submit!" /> 

Затем, если вы нажмете на эту кнопку, будет отправлена ​​родительская форма.