Jquery填写表单输入文本值

时间:2013-02-02 04:13:01

标签: javascript jquery

在页面加载时,我希望jquery将UUID方法作为值加载到UUID字段,以便我看到它作为提交的参数传递。 ThisSO post有所帮助,但我仍然没有到达那里......

<FORM ACTION="urlAuction.html" METHOD=GET>
 <INPUT TYPE=TEXT NAME="url">
 <INPUT id="uuid" TYPE=TEXT NAME="uuid" VALUE="" >
 <INPUT TYPE=SUBMIT VALUE=Submit>
</FORM>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript"> 
 $(document).ready(function() {
     var $uuid = $('#uuid'); 
         $uuid.val(GUID());
 });
 function GUID ()
 {
  'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
      var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
      return v.toString(16);
 });
}
</script>

1 个答案:

答案 0 :(得分:1)

您的GUID函数缺少return来返回它为您生成的值:

 function GUID ()
 {
     return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c)
     {
        var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
        return v.toString(16);
     });
 }

看起来它返回格式化大括号的方式,但实际上return v.toString(16)属于replace使用的匿名回调函数,用随机的十六进制数字填充每个数字。 / p>