2014-12-23 80 views
-1

世界上最简单的PHP表单不提交。我只想要一个用户点击图像时提交的表单。目前绝对没有任何反应。使用Javascript:为什么这个简单的AJAX PHP表单不提交?

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"> 
<script> 
function changeImage(id) { 
document.images[id].src = "x"; 
var datastring = 'orderID=13&partID=' + id; 
submit; 

$.ajax 
(
    { 

    type: "POST", 
    url: "allocatepartssubmit.php", 
    data: dataString , 
    cache: false, 
    success: function(){ 
     alert('success'); 
    }, 
    error: function(){ 
     alert('failure'); 
    } 
    }); 

} 

</script> 

相关的HTML行:

<img src="x" onclick="changeImage('x')" id="x"> 

我已经取代了各个部分用 'X' 为便于观看。 js图像开关工作正常,所以我知道正在调用changeimage()函数。但表单不是发布。它没有提示成功或失败,暗示.ajax的内容没有被看到。

Wat do?

+6

'submit;'不会调用任何...顺便说一句,你在说FORM吗??? –

+0

如果你想提交表单使用这个'document.getElementById(“myForm”)。submit();' –

+0

道歉的家伙,但我已经找到了问题!这是我有datastring和dataString。而已!是的,'提交'这一行来自以前的一段代码,现在它是多余的。对不起浪费你的时间! – mcplums

回答

1

试试吧,甜美&短代码给你!

<img src="exapmle.png" class="change_image" id="x"> 

的jQuery -

$(document).ready(function() { 

    $('.change_image').live('click',function(){ 

     var id = $(this).attr('id'); 
     var dataStr = 'orderID=13&partID=' + id; 

     $.ajax({ 
      type: "POST", 
      url: "allocatepartssubmit.php", 
      data: dataString , 
      cache: false, 
      success: function(response){ 
       alert('success'); 
      }, 
      error: function(err){ 
       alert('failure'); 
      } 
     }); 
    }); 
}); 
0

试试这个它会工作:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"> 
<script> 
function changeImage(id) { 
var datastring = 'orderID=13&partID=' + id; 

$.ajax 
(
    { 

    type: "POST", 
    url: "allocatepartssubmit.php", 
    data: dataString , 
    cache: false, 
    success: function(){ 
     alert('success'); 
    }, 
    error: function(){ 
     alert('failure'); 
    } 
    }); 

} 

</script> 

从您的代码删除submit;document.images[id].src = "x";,因为这些未使用。