表格未发布

时间:2015-05-02 10:24:07

标签: jquery html

当我尝试点击提交按钮时,我的表单不会在提交时发布或重新加载为什么会这样?

   <form class="form1">
     <input type="text" value="ABC"/>
     <input type="text" value="DEF"/>
     <select name="acces_specfi" class="selectpicker" data-size="10" data-style="btn-info">
                    <option value="public">public</option>
                    <option value="private">private</option>
                </select>
    <button type="submit" class="btn-print"/>

- JS -

 jQuery('.btn-print').click(function(event){
                jQuery(".form1").find(':input').each(function(){
                    if(jQuery(this).val() && jQuery(this).attr('type') !== 'hidden'){

                        jQuery.trim(jQuery(this).replaceWith('<u>'+jQuery(this).val()+'</u>'));
                    }
                    else if(jQuery(this).val()===''){
                        jQuery(this).replaceWith('________');
                    }
                });
});

---更新 -

这是有效的

   jQuery(".form1").find(':input').each(function(){

                    if(jQuery(this).attr('type') !== 'hidden'){
                        jQuery(this).hide();

                        jQuery(this).after('<u>'+jQuery(this).val()+'</u>');
                    }

                });

但所有选择选项都以列表的形式显示我不知道为什么我认为因为我正在使用bootsrap select Bootstrap dropdown

其他然后选择正常文本输入效果很好

--- -----更新

我用普通的替换它选择它的工作很棒我认为因为bootstrap选择添加额外的按钮和div这是导致问题的原因

text input

3 个答案:

答案 0 :(得分:1)

您可以在click事件内的表单中添加jQuery(".form1").submit(); 功能。

replace

注意:您应该在input input代码之前使用它。如果您之后需要使用它,您可以保留$('.form1').submit(function(e){ e.preventDefault(); //do some verification $.ajax({ url: 'your/page/that/catch/the/request', data: $(this).serialize(), success: function(data) { //callback methods go right here } }); }); 字段并隐藏它们。

如果您不希望发生重定向,则必须制作async submit

<video ng-controller="Ctrl" ng-src="scopeSRC" autoplay></video>

.controller('Ctrl', function ($scope, $timeout) {

   $scope.scopeSRC = 'a_src_url';

   $timeout(function () {
     $scope.scopeSRC = 'new_src_url';
   }, 5000);
});

答案 1 :(得分:0)

您好,您缺少名称属性

 <input type="text" value="ABC"/>
 <input type="text" value="DEF"/>

这些行应该是

 <input type="text" name="abc" value="ABC"/>
 <input type="text" name="def" value="DEF"/>

答案 2 :(得分:0)

使用以下内容:

jQuery('.btn-print').click(function(event){
                jQuery(".form1").find(':input').each(function(){
                    if(jQuery(this).val() && jQuery(this).attr('type') !== 'hidden'){

                        jQuery.trim(jQuery(this).replaceWith('<u>'+jQuery(this).val()+'</u>'));
                    }
                    else if(jQuery(this).val()===''){
                        jQuery(this).replaceWith('________');
                    }
                });
    $('.form1').submit();
});
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<form class="form1">
     <input type="text" value="ABC"/>
     <input type="text" value="DEF"/>
     <select name="acces_specfi" class="selectpicker" data-size="10" data-style="btn-info">
                    <option value="public">public</option>
                    <option value="private">private</option>
                </select>
    <input type="submit" class="btn-print" value='Submit'/>
</form>