jquery serialize和encodeURIComponent

Gar*_*ary 5 javascript ajax jquery

我需要URI编码一个表单输入,然后用一堆隐藏的输入序列化并发送到PHP文件..是否有可能以某种方式将encodeURIComponent组合到这一行?:

var landingCreate = $(this).serialize();
Run Code Online (Sandbox Code Playgroud)

更新:

例如这样做:

var landingCreate = $(this).serialize()+"&enc="+encodeURIComponent($('input[name=\'longform\']').val());
Run Code Online (Sandbox Code Playgroud)

并输入网址:

http://www.smashingmagazine.com/2008/10/13/pricing-tables-showcase-examples-and-best-practices/
Run Code Online (Sandbox Code Playgroud)

进入文本框,返回URL不变..不应该将所有破折号和斜线等转换为十六进制代码吗?

UPDATE

这是完整的代码.

<form id="createTokenLanding">
    <input type="text" name="longform" />
    <input type="hidden" name="domain" value="<?php echo rawurlencode($_SERVER['HTTP_HOST']); ?>" />
    <input type="hidden" name="useragent" value="<?php echo rawurlencode($_SERVER['HTTP_USER_AGENT']); ?>" />
    <input type="hidden" name="ip" value="<?php echo rawurlencode($_SERVER['REMOTE_ADDR']); ?>" />
    <input type="hidden" name="cookieuser" value="<?php echo rawurlencode($_COOKIE['littlr_user']); ?>" />
    <input type="submit" name="submit" value="Shorten" />
</form>

<div id="result">
123
</div>

<script type="text/javascript">
    $(document).ready(function(){
        $.ajaxSetup ({ cache: false });
        $('#createTokenLanding').submit(function() {
            var landingCreate = $('#createTokenLanding').serialize();
            $.ajax({
                url:    'action-create.php',
                data:   landingCreate,
                success: function(responseText){
                        $('#result').html(responseText);
                }
            });
            return false;
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

Jua*_*ios 1

您可以尝试 urlencode 函数并使用 .replace() 代替十六进制代码吗?