我刚刚学习javascript的最后几天(几个月前开始使用PHP)。
所以,我的代码是这样的:
例如
http://controljuridico.com/video01/
我有三个文件。
带有表单的Html文件。
点击“enviar”(发送)按钮后带有这些功能的javascript文件。
处理数据的php。
HTML文件(index.html)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>index</title>
<link href="css/css.css" type="text/css" rel="stylesheet" media="screen" />
<script src="js/jquery.js" type="text/javascript" language="JavaScript"></script>
<script src="js/js.js" type="text/javascript" language="JavaScript"></script>
</head>
<body>
<div id="content">
<h1>Test.</h1>
<h1>Step 1) choose city</h1>
<br />
<br />
<label>test(*)</label>
<hr />
<br />
<form name="form_data" id="form_data">
<label>(*) City</label>
<br />
Medellin
<input type="radio" name="ciudad" value="Medellin" />
Manizales
<input type="radio" name="ciudad" value="Manizales"/>
Cali
<input type="radio" name="ciudad" value="Cali"/>
<br />
<label>(*) Especialidad</label>
<br />
<input type="button" value="Enviar" id="btn_enviar" />
<br />
<br />
<label id="mensaje"></label>
</form>
<div id="resultado" ></div>
</div>
</body>
</html>
js.js文件
$(document).ready(function(){
$('#btn_enviar').click(function(){
if( validaRadio( 'ciudad','Ciudad' ) == false) return false;
$.ajax({
type:'POST',
url :'upload.php',
data: $('#form_data').serialize(),
beforeSend : function(){
$('#mensaje').html('Enviando datos...');
},
success: function (data){
$('#mensaje').html('Datos enviados correctamente.');
$('#resultado').html(data);
},
complete: function(){
$('#form_data').slideUp();
$('#resultado').slideDown();
}
});
});
});
Php文件(upload.php)
<?php
$sergu = $_POST['ciudad'];
if ($_POST['ciudad'] == "Medellin") {
?>
<label>Ciudad Ingresada:</label>
<br />
<label><?php echo $_POST['ciudad'] ?></label>
<hr />
<?php
}else{
echo "it is not medellin....";
}
?>
所以,这很好用但是。如果我想要这个怎么办:
点击“enviar”按钮后,还会在此表单的左侧显示另一个类似的表单。
我的意思是它就像选择步骤一样,如果你选择第一步我需要另一步等等,我希望这另一步只是出现在previus形式的左边。
有可能吗?如何?
提前感谢您的帮助!我真的很感激。
答案 0 :(得分:0)
例如,当页面首次通过css加载时,您可以隐藏“第二个表单”,如下所示:
<form id="second_form" style="display: none">...
当你的成功函数触发时你就像这样删除css:
success: function(){
...
$('#second_form').show();
}
答案 1 :(得分:0)
简答:是的。
在jquery中,有.insertBefore()。一种简单的方法来实现你(想要的)只是在php中回显出新的表单,而不是
$('#resultado').html(data);
执行以下操作:
$(data).insertBefore('#resultado');
这将插入新的表单,由PHP回显,在之前的。当然你还必须删除
$('#form_data').slideUp();
否则,表格将被隐藏。