Tag: 形成

Rails动态更改集合在表单中选择基于表单域

我有一个跟踪呼叫的Rails 3.2.14应用程序,每个呼叫都有一个关联设施模型的提取和下降设施。 在呼叫模型中,区域模型(即休斯顿,达拉斯,奥斯汀等)有一个关联,我们根据呼叫的来源选择区域。 我想做的是能够选择一个特定的区域(即休斯顿),而在拾取设施集合中只显示休斯顿地区的设施。 我假设开始时我需要在Facility和Region之间建立关系: facility.rb attr_accessible :region_id belongs_to :region region.rb has_many :facilities 然后我需要为每个设施设置一个与相应区域匹配的region_id(即休斯顿,达拉斯等),以便关联正常工作。 我不确定的是如何选择特定区域,只在该区域中显示设施。 我假设我会在这里使用一些jQuery / JS / Ajax来实现它但不确定如何使它工作。 以下是我的电话,设施和地区模型目前的样子摘录: call.rb belongs_to :transferred_from, :foreign_key => :transfer_from_id, :class_name => ‘Facility’ belongs_to :transferred_to, :foreign_key => :transfer_to_id, :class_name => ‘Facility’ belongs_to :region facility.rb has_many :calls_transferred_from, :foreign_key => :transfer_from_id, :class_name => ‘Call’ has_many :calls_transferred_to, :foreign_key => :transfer_to_id, :class_name […]

使用跨浏览器支持的jQuery更改类型

问题 以下脚本完全符合我的要求,在除IE8之外的所有测试的浏览器中,它删除按钮而不用任何替换它。 背景 我一直在研究一种方法,用jQuery替换提交类型输入和图像类型输入。 首先,我有以下内容适用于FF和webkit: marker = jQuery(”).insertBefore(‘input#SearchButton’); jQuery(‘input#SearchButton’).detach().attr(‘type’, ‘image’).attr(‘src’,theme_folder+’/style/images/search_button.png’).insertAfter(marker); marker.remove(); 但是,如果IE(它删除按钮,但不替换为图像),所有6个版本都会失败,所以我为IE浏览器开发了以下脚本: marker = jQuery(”).insertBefore(‘input#SearchButton’); new_search = jQuery(”) jQuery(new_search).insertAfter(‘input#SearchButton’); jQuery(‘input#SearchButton’).remove(); marker.remove(); 我正在使用HTML Conditionals来过滤到适当脚本的流量,所以整个事情看起来像这样: marker = jQuery(”).insertBefore(‘input#SearchButton’); jQuery(‘input#SearchButton’).detach().attr(‘type’, ‘image’).attr(‘src’,theme_folder+’/style/images/search_button.png’).insertAfter(marker); marker.remove();

jQuery表单转发器和select2不能一起工作

我正在使用Select2和jQuery表单转发器( https://github.com/DubFriend/jquery.repeater ) 我已经在google /上搜索了2天,但似乎无法让它工作。 include jquery/select2.js/jquery.repeater.js var form = $(‘#form’); form.find(‘select’).select2(); form.repeater({ show: function () { $(this).show(function(){ form.find(‘select’).select2(‘destroy’).select2(); }); }, hide: function (remove) { $(this).hide(remove); } }); 问题是jQuery.repeater克隆了div标签,其中input2已经初始化并且已经更改了DOM,因此jQuery.repeater会复制更改的DOM。 我试图在调用重复动作之前销毁select2,但是dindt也可以工作。

使用jquery和fancybox将表单发布到弹出窗体

我试图在fancybox( http://fancybox.net/ )窗口中从一个表单发布到另一个表单。 例如,我在表单上有一个带有复选框的城市列表。 当用户在第一个表单上单击“提交”时,我希望fancybox窗口显示为另一个表单。在新表单上将有一个文本框,其中在上一个表单中选择的城市ID被隐藏为表单元素。 我提出的问题是在提交表单时弹出fancybox窗口。 我要么最终将用户完全重定向到第二个表单,要么弹出窗口不是fancybox窗口。 到目前为止,我最接近的是使用我在其他网站上找到的一些代码。 这个问题是弹出窗口是一个普通的浏览器窗口。 $(document).ready(function() { $(‘#myform’).submit(function() { window.open(”, ‘formpopup’, ‘width=400,height=400,resizeable,scrollbars’); this.target = ‘formpopup’; }); }); 提前致谢。

在运行已更改这些属性的函数后,使用特定属性计算当前输入数

与此问题相关: 使用jQuery,保持表单的提交按钮被禁用,直到所有必需的textbox,radio,checkbox元素都有值(或被选中) 我非常友好地帮助整合了这个function $(‘input[type=submit]’).prop(‘disabled’, true).addClass(‘disabled’); var required = $(‘[required]’); required.bind(‘change keyup’, function() { var flag = 0; required.each(function() { if ($(this).not(‘:checkbox, :radio’).val() || $(this).filter(‘:checked’).val()) { flag++; } }); if (flag == required.length) { $(‘input[type=submit]’).prop(‘disabled’, false).removeClass(‘disabled’); } else { $(‘input[type=submit]’).prop(‘disabled’, true).addClass(‘disabled’); } }); 这里发生的是表单的提交按钮保持禁用状态,直到所有具有“required”属性的字段具有某种值(或已经检查过等)。 作为更大图片的一部分,另一个jQuery函数(工作正常)隐藏了一些这些字段,具体取决于选择框的值。 实际上,当隐藏这些字段时,应删除所需的属性。 删除所需的属性后,我希望上面的函数只计算剩余的必需字段(required.length),但事实上,它计算所有这些字段 – 即使是那些不再具有必需属性的字段。 在这方面的任何想法?

如何使用jquery在rails中动态添加嵌套属性

我一直在问这个问题的迭代一段时间了 – 但是在SO社区的帮助下我几乎得到了它的工作。 首先,谢谢! 我有一个表单来创建一个新的student_group并使用Cocoon gem: The name of this group is and it is a/an There are students in this group. builder %> ‘big_button round unselectable’%> 和’student_fields’部分: 现在问题的核心: 我有以下.js文件来动态地向表单添加正确数量的学生字段: var row_i = 0; function emptyRow() { row_i++; this.obj = $(“”); this.obj.append(”); this.obj.append(‘select a genderFemaleMaleTransgender’); this.obj.append(‘ remove student’) } function refresh(new_count) { //how many students […]

jQuery匹配模式

我正在尝试在发送表单之前使用jQuery validation我的输入。 当数据库中没有插入值时,这就是我的输入字段: 当数据库中插入现有值时,这就是我的输入字段: 我想要: 检查该值是否已存在于数据库中 检查用户是否要将现有值替换为零或零,并禁止它。 检查用户是否尝试在新字段中插入0并禁止它。 解决了: $(“input[name^=’input_”+var+”_’]”) .each(function() { if ($(this).attr(‘name’).match(/^input_\d+_\d+_\d+_\d+/) && ($(this).val() == ” || $(this).val() <= 0)) { displayDialog("”) flag_error = 1; return false; } }); // Submit the form.

Backbonejs保存文件和表单数据

我在表单和表单数据中有一个上传图片。 表单数据存储在模型中 如何将表单数据与文件数据组合并保存模型 我正在设置模型属性以及如何在属性中包含文件数据。 我发现此链接强制Backbone将属性保存为文件 。 我无法将它与我的表格联系起来 User = Backbone.Model.extend({ readAvatar : function (file, callback) { var reader = new FileReader(); // File API object for reading a file locally reader.onload = (function (theFile, self) { return function (e) { // Set the file data correctly on the Backbone model self.set({avatar_file_name : theFile.name, avatar_data : […]

加载GIF会在Safari中提交表单时停止动画

看看这个简单的JSFiddle (忽略所有的javascript代码,这里的问题只是关于动画加载GIF)。 我希望在提交表单之前显示动画加载GIF。 我试过这个: setTimeout(function(){ $(‘form[name=”checkout-form”]’).submit(); },1000); 这样工作正常,动画加载GIF出现1秒钟,然而,一旦发送提交请求,它就会停止动画。 我需要做什么才能让GIF动画直到页面再次加载(或直到响应从页面返回?)

如何使用jquery(ajaxForm插件)将表单提交到外部站点但不重新加载到其他页面?

我正在尝试创建一个表单,将客户的姓名和电子邮件地址发送到icontact(电子邮件列表应用程序)。 所有值对于icontact都是正确的,如果我像往常一样提交表单,icontact会回复它添加了电子邮件地址。 成功消息从icontact的网站加载到新页面。 我想要完成的是ajax会发送表单并在当前页面中返回成功消息,而不会将客户发送到新页面。 这是测试页面: http : //www.skhot.com/test/js-test/forms/index.php