Prototype 表单 serialize() 方法 | Prototype – 表单管理

返回到:Prototype – 表单管理

此方法用于将表单数据序列化为适合 Ajax 请求的字符串(默认行为),或者如果可选的 getHash 计算结果为真,则为对象哈希,其中键是表单控件名称,值是数据。

根据可选参数 getHash 的计算结果是否为真,结果要么是 {name: “johnny”, color: “blue”} 形式的对象,要么是 “name = johnny&color = blue” 形式的字符串,适合用于 Ajax 请求中的参数。

语法

formElement.serialize([getHash = false]);

返回值

它返回一个字符串对象。

这里有两个关于它如何工作的提示。有关详细信息,请查看下面的示例。

$('example').serialize()
// 'username = sulien&age = 22&hobbies = coding&hobbies = hiking'
$('example').serialize(true)
// {username: 'sulien', age: '22', hobbies: ['coding', 'hiking']}

例子

<html>
   <head>
      <title>Prototype examples</title>
      <script type = "text/javascript" src = "/javascript/prototype.js"></script>
      
      <script>
         function showResult() {
            var form = $('example'); 
            var element = form.serialize(); 
            alert("form.serialize() : " + element.inspect());
         }
      </script>
   </head>

   <body>
      <p>Click the button to see the result.</p>
      <br />

      <form id = "example" action = "#" onsubmit = "return false">
         <fieldset>
            <legend>User info</legend>
            <div>
               <label for = "username">Username:</label> 
               <input name = "username" id = "username" value = "Sulien" type = "text">
            </div>
            <div>
               <label for = "age">Age:</label> 
               <input name = "age" id = "age" value = "23" size = "3" type = "text">
            </div>
            <div>
               <label for = "hobbies">Your hobbies are:</label>
               <select name = "hobbies" id = "hobbies" multiple = "multiple">
                  <option>coding</option>
                  <option>swimming</option>
                  <option>hiking</option>
                  <option>drawing</option>
               </select>
            </div>
         </fieldset>
      </form>
      <br />
      
      <input type = "button" value = "Result" onclick = "showResult();"/>
   </body>
</html>

返回到:Prototype – 表单管理

作者:terry,如若转载,请注明出处:https://www.web176.com/prototype_api/8499.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2023年1月31日
下一篇 2023年1月31日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注