我有一个项目,我必须计算两点之间的共同点。一旦用户在街道,省和城市的三个文本框中输入,就计算出第一个共同参数。
如果用户填写所有三个框而不是之前,我怎样才能执行PHP中的代码?
<form name="form" action="" method="post">
<input type="text" name="provincia" id="provincia">
<input type="text" name="municipio" id="municipio">
<input type="text" name="calle" id="calle">
<input type="submit" value="¡Buscar!"/>
</form>
这是用户必须填写的表单。一旦用户写入所有三个(无需订单)我有PHP代码我不确定它是否可以执行这些框有值。
我应该用什么来完成这项工作?阿贾克斯? jQuery的?的Javascript?
不太确定,
感谢。
答案 0 :(得分:1)
$(document).ready(function () {
var flag = false;
$("input[type=text]").change(function () {
flag = true;
$("input[type=text]").each(function () {
if ($(this).val().trim() == "") {
flag = false;
}
});
if (flag) {
alert("all have values");
$("input[type=submit]").trigger("click");
}
alert(values);
});
});
修改强>
<form name="form" action="" method="post">
<input type="text" class="tobeChecked" name="provincia" id="provincia">
<input type="text" class="tobeChecked" name="municipio" id="municipio">
<input type="text" class="tobeChecked" name="calle" id="calle">
<input type="submit" value="¡Buscar!"/>
</form>
$(document).ready(function () {
var flag = false;
$(".tobeChecked").change(function () {
var values = "";
flag = true;
$(".tobeChecked").each(function () {
values += $(this).val().trim() + "+";
if ($(this).val().trim() == "") {
flag = false;
}
});
if (flag) {
alert("all have values");
$("input[type=submit]").trigger("click");
}
});
});
答案 1 :(得分:0)
创建一个函数来验证这三个文本框的必填字段,一旦所有字段都填充了值,执行你的脚本:
$('#provincia,#municipio,#calle').blur(function(){
if($('#provincia').val() !="" && $('#municipio').val() !="" && $('#calle').val() !=""){
// Do your process here
}
});
答案 2 :(得分:0)
您可以使用jquery validate插件来验证客户端本身的这3个输入字段。这样,用户无法在完全填充输入字段之前提交表单。
答案 3 :(得分:0)
为您的按钮添加如下ID:
<input type="submit" id="button" value="¡Buscar!"/>
然后你可以在JQuery中执行此操作:
$("#button").click(function(){
//Get the value of the fields
var textfield1 = document.getElementById("provincia").value;
var textfield2 = document.getElementById("municipio").value;
var textfield3 = document.getElementById("calle").value;
//Check if Values are filled
if ( !textfield1.match(/\S/) || !textfield2.match(/\S/) || !textfield3.match(/\S/))
{
//execute your script
}
我希望它有所帮助。
答案 4 :(得分:0)
使用jquery .change()功能
$( "#provincia" ).change(function() {
//you can do something here
alert( "Handler for .change() called." );
});