javascript - 单击按钮时使用 Jquery 创建隐藏元素

标签 javascript jquery html

我有一个使用 jscript 提交到服务器的表单,但是我需要发布提交按钮的值。这不能以传统方式完成,我必须使用 jscript 来发布表单。我正在做的是,当单击按钮时,我想创建一个带有按钮值的隐藏文本项并将其发布到服务器。我在创建元素并将其附加到表单时遇到一些问题:

JScript

 $(document).ready(function(){      

    $('#query').click(function(e){

         var form = $('citizenRegistration');


          var self= $("#query"),newElement = $("<input type='hidden'/>");

          alert("self value is : "+self.val());

                 //create a new element and copy attributes             
                newElement
                    .attr("name", 'user_request2')
                    .val(self.val())
                    .appendTo('.buttons');

            alert(newElement.attr("name"));

        e.preventDefault();
        //alert($(this).val());
        //submitPage();

    });

});

HTML

 <div class="buttons">  
    <ol>
    <li><input id="save" type="submit" name= "user_request" value="Save"/>
    <input id="update" type="submit" name= "user_request" value="Update"/>
    <input id="query" type="submit" name= "user_request" value="Query"/>
    </li>       
    </ol>
    </div>

最佳答案

在对 attr() 的调用中指定属性 type,而不是在元素的构造中。此外,citizenRegistration 的选择器缺少 .#,具体取决于它是 ID 还是类。

   $(document).ready(function(){
        $("#query").click(function(e){
             var form = $("#citizenRegistration"); //Added # may need .

              //removed type=hidden, you can just use $(this)
              var self= $(this),newElement = $("<input/>");
                     //create a new element and copy attributes             
                    newElement.attr({
                            "name":"user_request2",
                            "type":"hidden" //added new attribute
                     }).val(self.val()).appendTo(".buttons");

            e.preventDefault();
        });
    });

工作示例: http://jsfiddle.net/BXqVP/1/

使用 firebug 检查页面时可以看到隐藏元素:

enter image description here

关于javascript - 单击按钮时使用 Jquery 创建隐藏元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15422655/

相关文章:

html - 无法创建具有固定位置的 iframe

javascript - 如何将计算值绑定(bind)到 Angular.js 中的 ng-model 字段,以便我可以使用 Ruby on Rails 将完整的表单详细信息保存在数据库中

javascript - 加载并单击时隐藏/显示 div

javascript - 在 contenteditable 元素中插入链接

javascript - OO Javascript - 正确的范围处理?

html - 是否可以使用 greasemonkey/tampermonkey 根据浏览器窗口的大小最大化特定图像的尺寸?

javascript - 表单提交事件中 this.submit() 的行为

php - 在 php 或 javascript 中构建 html 结构?

javascript - 从 dropzone 更新预览模板中的信息而不更新所有模板

html - 纯 CSS 滚动体和带有动态高度和宽度的静态 thead 表