首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提交后jquery无法工作

问提交后jquery无法工作
EN

Stack Overflow用户
提问于 2015-12-15 17:07:01
回答 3查看 335关注 0票数 1

我想从用户提交的重定向URL。但是,这不管用。

代码语言:javascript
复制
<script>
$(function() {
  $("#form1").on("submit", function(event) {
   var username=$('#username').val();
   var jqxhr = $.get( "/get_url.php",{ username: ""+username+""}, function(data) {
   alert("Go to "+data);
   $(this).attr('action', data);
  });
 });
});
</script>

但是如果我放置event.preventDefault();,它将显示我想要重定向的URL。(为我糟糕的英语感到抱歉)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-12-15 17:16:40

更新HTML,更改提交按钮。

代码语言:javascript
复制
<input type="button" value="submit" id="form_submit" />


<script>
 $(function() {
   $("#form_submit").on("click", function() {
       var username=$('#username').val();
       var jqxhr = $.get( "/get_url.php",{ username: username}, function(data) {
                       $("#form1").attr('action', data);
                       $("#form1").submit();
                    });
     });

    $("#form1 input[type='text']").keyup(function (e) {
        if (e.keyCode == 13) {
            $("#form_submit").trigger('click');
        }
    });
});
    </script>
票数 0
EN

Stack Overflow用户

发布于 2015-12-15 17:14:52

您希望从get_url.php获取URL,然后提交表单

那么你必须:

  1. 阻止表格提交
  2. 获取正确的url
  3. 创建另一个具有相同内容和不同操作的表单
  4. 提交新的表格。
票数 1
EN

Stack Overflow用户

发布于 2015-12-15 17:22:11

我想更改操作方法,并将我的所有数据发布到它。

要发送所有输入,可以使用serialize,对于post请求,可以使用ajax $.post请求:

代码语言:javascript
复制
$.post( "/get_url.php", $("#form1").serialize());

我想从用户提交重定向URL

若要重定向用户,可以使用:

代码语言:javascript
复制
window.location.replace("Url HERE");

完整示例:

代码语言:javascript
复制
$(function() {
    $("#form1").on("submit", function(event) {
        $.post( "/get_url.php", $("#form1").serialize(), function(url) {
            window.location.replace(url);
        });
    });
});

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34295249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档