양식이 있고 제출 프로세스를 재정의 할 jquery 코드가 있습니다. 그러나 작동하지 않으며 오류가 없습니다. 샘플 코드를 단순화했습니다. 오타를 만들지 않았 으면합니다.jQuery submit() - 양식 동작을 재정의하는 이벤트
코드에 어떤 문제가 있는지 알고 있습니까? 그것은 내가 경고()를받는 지점에 오지 않는다. click() 이벤트가 제대로 작동합니다.
ID를 양식에 설정하려고했습니다. 아직 아무것도.
사용 JQuery와-1.4.2.min.js
<form name="checkout_shipping" action="checkout.php" method="post">
<div class="contentText">
<table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="selectRowEffect(this, 0); document.checkout_shipping.submit();">
<td width="75%" style="padding-left: 15px;">Flat price</td>
<td>$8.00</td>
<td align="right"><input type="radio" name="shipping" value="flat_flat" onclick="this.form.submit();" /></td>
</tr>
<tr onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="selectRowEffect(this, 1); document.checkout_shipping.submit();">
<td>Pick-up</td>
<td>$0.00</td>
<td align="right"><input type="radio" name="shipping" value="pickup_pickup" checked="checked" onclick="this.form.submit();" /></td>
</tr>
</table>
</div>
</form>
<script>
$('form[name=checkout_shipping]').submit(function(e) {
e.preventDefault();
alert('Houston we have contact!');
$.ajax({
url: '/includes/checkout/payment.php',
data: false, // false for testing
type: 'POST',
cache: false,
async: false,
dataType: 'html',
error: function(jqXHR, textStatus, errorThrown) {
// ...
},
success: function(data) {
// ...
}
});
});
</script>
에로스가 없습니다. 작동하지 않았습니다. 그냥 양식을 제출하고 페이지를 다시로드합니다. 귀하의 예가 링크에서 트릭을 했음에도 불구하고. – tim
나를 위해 일하는 JS Fiddle에서 HTML/스크립트를 복사했습니다. JSFiddle에서 코드를 테스트 했습니까? –
나는 코드를 복사하고 ID를 명명했을 때 오타가 있었는데 오타가있었습니다. 그것은 효과가있다. 많이 sooo 감사합니다! 위. 나는 그것이 이벤트 우회 문제 일 뿐이라는 것을 결코 짐작하지 못했다. – tim