javascript 当我使用input type=button时,它的值不会发送到服务器

u1ehiz5o  于 12个月前  发布在  Java
关注(0)|答案(5)|浏览(112)

在一个表单中,我有一个按钮作为输入/提交。当我提交按钮的值是发送。
如果我改为输入/按钮,并通过JQuery提交,即$("form").submit(),表单提交,但按钮的值不发送。为什么?我如何解决这个问题?

<form name="myform" id="myform" action="http://localhost/mypage.html" method="POST" >    
<input type="button" id="btn" value="Actual value" name="save" >  
</form>   

$(document).ready(function() {   
 $("#btn").click( function() {   
     $("myform").submit();  
  }
}

字符串

vlurs2pr

vlurs2pr1#

按钮和输入不一样--这就是为什么按钮不添加到表单提交中。你可以在按钮旁边添加一个hidden类型的输入,并带有你想要的值。
否则,您必须在表单提交后使用JavaScript获取按钮以获取其值。

rsl1atfo

rsl1atfo2#

试试这个代码

$(document).ready(function() {   
 $("#btn").click( function() {   
     $("myform").submit();  
  });
});

字符串

yjghlzjz

yjghlzjz3#

如果您想有条件地检查表单提交,可以使用input=“submit”按钮和preventDefault();函数

$("#btn").click(function(event){        

        if(truePart){   
            $(this).unbind('click').click();        

        }else{
             event.preventDefault();
             alert("Please fill the required fields");              
        }
    });

字符串

vaj7vani

vaj7vani4#

尝试name=“Actual Value”,然后尝试使用POST ['name']访问服务器上的值,它将让您获得实际值。

wfauudbj

wfauudbj5#

看起来你的JavaScript语法不正确。
您的代码

$(document).ready(function() {   
    $("#btn").click( function() {   
        $("myform").submit();  
    }
}

字符串
应该看起来像这样

$(document).ready(function() {   
    $("#btn").click(function() {   
        $("myform").submit();  
    });
});


你少了两个右括号和两个右括号。
如果这没有帮助,尝试这个按钮:

<input type="submit" name="save" value="Actual Value" />


确保您的服务器端代码也准备好接受save参数。不能将代码发送给不想接收它的东西!

相关问题