Tag: 表单

在不使用插件的情况下在jquery中进行表单validation

我想在将数据发送到保护程序之前使用jqueryvalidation一个简单的表单。 在这里,我需要在警告框中显示错误消息。 我不能使用任何jquery插件来使用validation过程。 这是我的HTML表单 – Name : Address : Email: 如果用户提交此表单而不填写任何表单元素,那么我需要在单个警报框中显示3条错误消息。 像这样 Name can not be empty. Address can not be empty. email can not be empty. 如果只有一个或两个字段保持为空,那么我需要根据情况控制错误消息。 在这里,我尝试使用jquery。 但警告框一个接一个地显示。 我的jQuery – $(‘#submit’).on(‘click’, function() { valid = true; if ($(‘#name’).val() == ”) { alert (“please enter your name”); valid = false; } if ($(‘#address’).val() == […]

限制允许检查的复选框数量

可能重复: 计算所选复选框的数量而不重新加载页面? 我有一个订单,询问用户他们想要哪种类型的通行证(1-3天),并给他们选择他们想要通行证的日期。 目前,当他们选择3天时,我的JQuery为他们选择所有3个复选框,并在他们选择1或2天时取消选择。 但是,我想要做的是: 当他们选择2天通行证时,它只允许他们检查最多2个盒子。 当他们选择1天通行证时,它只允许他们检查1个方框。 我想知道我的validateDays()函数需要做什么 – 这是运行此validation的最佳方式,或者这是否是实际的最佳路径。 我想使用的每个方法都要求复选框具有相同的名称/ ID – 但由于表单的其他部分(省略),遗憾的是它们不能。 任何想法/指针? HEAD部分JavaScript: function validateDays() { $(‘#matthewpeckham’).find(‘input[type=”checkbox”]’).click(function () { var pass = parseInt($(‘input[name=”other_1″]:checked’).val(), 10) //1,2,3 var days = $(‘#matthewpeckham’).find(‘input[type=”checkbox”]:checked’).length; console.log(days, pass); if (days == pass) { $(‘#matthewpeckham’).find(‘input[type=”checkbox”]’).not(‘:checked’).prop(‘disabled’, true); } else { $(‘#matthewpeckham’).find(‘input[type=”checkbox”]’).not(‘:checked’).prop(‘disabled’, false); } }) $(‘input[name=”other_1″]’).change(function () { $(‘#matthewpeckham’).find(‘input[type=”checkbox”]’).prop({ ‘checked’: false, ‘disabled’: […]

Jquery表单不在Web服务器上显示提交消息,但它在本地主机上显示提交消息

我搞砸了一个奇怪的问题。 我的表单在本地计算机上工作正常但是当我将其上传到某个Web服务器时,它无法正常工作。 没有在线上传,当我添加一些值并单击提交。 它显示了ThankYou消息。 但是当它被上传时,在添加任何值之后,当添加一些值并按下提交时,值会输入到数据库但它不显示Thankyou消息,而是保持原样。 请提出一些解决方案。 我该怎么做才能让它在线工作? 我应该发送包含表单的单个HTML文件吗? 请看这里的表格: http : //dl.dropbox.com/u/33855631/lon_dec/form.htm 我也试过上传到像bluehost等不同的服务器,但没有解决方案。

使用选择框检测交互

如何(使用javascript或jQuery)我可以检测何时从选择框中选择了一个值,即使它与之前选择的选项相同(即没有触发更改事件)。 主要是我需要这个用于鼠标交互,但是一个适用于键盘的解决方案也很方便。

Jquery Chosen专注于页面加载(onLoad?)

我在选择框中使用了Jquery Chosen插件,但是我想把它集中在页面加载上。 我使用以下代码来聚焦文本输入: onLoad=”document.forms.sales_order_form.customer.focus()” 但这对选择框不起作用:

Jquery表单检查返回true,但需要返回false

我在提交表单时运行此表单检查: if((formData[4].value == 1 || formData[4].value == 2) && !formData[2].value) { alert(‘Please fill out the key field’); return false; } else { $.ajax({ url: “/ajax/key_check.php”, cache: false, data: “key=” + formData[4].value, dataType: “html”, success: function(data) { if(data == 1) { alert(‘Key already exists’); return false; } } }); return true; } 该脚本有效,如果数据== 1,则警报密钥已存在,但表单仍然提交。 我想通过返回false,如果data == […]

用Ajax执行php文件

当我点击“立即注册”按钮时,我想执行’input.php’,其中我有代码将数据插入数据库并显示成功消息。 我不想离开当前页面。 $(document).ready(function() { $(“#confirm”).click(function() { alert (“data Added successfully.”); }); }); 我的代码给了我“数据已成功添加”消息,但PHP文件尚未执行,并且没有数据添加到数据库。 所有必要的数据都在会话变量中。

当我使用JQuery提交我的GET表单时如何更改查询字符串?

假设我的页面中有一个简单的表单,如下所示: Min price: Max price: 当我提交表单时,我有以下url: HTTP://…/properties/search MIN_PRICE = 100000&MAX_PRICE = 200000 我想更改此url: HTTP://…/properties/search价格= 100000,200000 为此,我使用JQuery和JQuery查询字符串插件 : $(document).ready(function() { $(“#form_search”).submit(function() { var querystring = rewrite_interval_qstring(); // querystring equals “?price=100000,200000” -> exactly what I want ! // ??? }); }); 如何更改(评论“???”)提交url? 我已单独测试了以下说明,但它不起作用。 window.location = querystring; window.location.href = querystring; window.location.search = querystring;

在jquery .serialize()之后如何处理php

好吧,不知怎的,我有最困难的时间来解决这个问题,所以我想用一个表单调用ajax,并使用jquery用.serialize()序列化它。 发送给php的数据看起来像这样 key1=value&key2=value2&key3=value3 我正在使用post请求。 它看起来很简单,但不知何故我真的很难弄清楚如何访问这些键/值对,我不能使用explode()on&因为这会给我 [0] => key1=value1 [1] => key2=value2 [2] => key3=value3 我不能在PHP中使用$ _POST [‘key1’]或$ _GET [‘key1’]来访问这些值。 我该怎么办!!! 谢谢 作为一个侧面问题,我注意到.serilize()用%0A替换换行符,用+替换白色空格,我如何用php解码这些值? 再次感谢! 编辑: 嘿,jquery代码是相当基本的: var formSubmit = $(this).serialize(); $.post(‘ajax.php’,{“formSubmit”: “true”, “formInfo”: formSubmit}

表单在preventDefault之后提交

我正在尝试在提交之前validation表单。 我尝试了几种方法,但是我无法在preventDefault之后提交表单。 这是我目前的代码: $(‘#formquote’).submit(function(e){ e.preventDefault(); console.log(‘here’); validating = true; var tval = valText(‘input[name=contactname]’); var pval = valPhone(‘input[name=telephone]’); var eval = valEmail(‘input[name=email]’); console.log(tval); console.log(pval); console.log(eval); if(tval && pval && eval){ $(“#formquote”).unbind(‘submit’); $(“#formquote”).submit(); } }); 控制台记录您可以按预期看到输出(分别为’here’,true,true,true)当表单第二次按下按钮时提交。 我也试过以下建议无济于事: -> $(“#formquote”).unbind(‘submit’).submit(); //same result -> $(“#formquote”).submit(); //by itself, infinite loop -> $(“#formquote”)[0].submit(); //non function error -> $(‘#formquote’).unbind(‘submit’, preventDefault); //’preventDefault’ not […]