我可以同时使用javascript和PHP表单吗?

时间:2012-01-16 19:07:12

标签: php javascript jquery

我想利用一些jquery函数来发送消息,比如有一个模态对话框,但我也希望包含不运行javascript的用户。

如果我有一个jquery函数来处理对话框但是用户没有启用javascript,那么最好的方法是将它们重定向到我的PHP页面来编写和发送消息吗?

我假设jquery代码具有最高优先级,因为它是客户端,但是我将PHP代码包装在标签中吗?

有更优雅的解决方案吗?

2 个答案:

答案 0 :(得分:2)

我认为我在这里要做的就是利用按钮的onclick事件。您可以使用javascript或jquery返回false。如果浏览器关闭了javascript,则会提交表单。

<input type="button" onclick="return btnClick()" value="submit">

然后在你的javascript中像

function btnClick(){
    //do ajaxy stuff
    return cancelEvent()
}
function cancelEvent()
{
    if (window.event) window.event.cancelBubble = true;
    return false;
}   

答案 1 :(得分:2)

您要做的是制作一个普通的HTML表单:

<form action="submit.php" method="POST" id="sendMessage">
   <input id="msg" name="message" type="text" />
   <button type="submit">Submit</button>
</form>

然后使用jQuery覆盖提交功能:

$('#sendMessage').submit(function(e){
  e.preventDefault(); // Stops the browser from submitting the form normally
  // Do stuff...
});

因此,如果启用了JavaScript,jQuery将处理表单提交。它未启用,浏览器将正常POST表单。