所以我研究并玩了很多例子,但现在浪费了一个阳光明媚的日子,所以我寻求帮助。
我有一个基本的 php 页面,它使用一个按钮显示摩托车链信息,我使用该按钮调用另一个 php 脚本来填充模态 JQuery 框。此页面按预期从脚本调用填充并显示数据,一切看起来都很好。
所以现在我之前为链接构建的事件处理程序没有按预期触发,我的问题是我什么时候绑定我的链接,我想在从 ajax 脚本填充数据之后。
我到处都试过了,下面是代码片段,希望有人能看到我的错误或错误。
我知道其他人也在同一条船上,或者至少有过解决这个常见问题的经验。
再次感谢!
$(function() {
// Attempt at Getting binding to work after
// Dynamically generated code from ajax call
$( ".chainSelected" ).on('click', 'a', function(event) {
alert('clicked');
event.preventDefault();
return false;
});
$( "#dialog-form" ).dialog({
autoOpen: false,
height: 400,
width: 750,
modal: true,
Cancel: function() {
$( this ).dialog( "close" );
}
});
$( "#selectChain" )
.click(function(event) {
if($('#pitch').val() == '*' ) {
event.preventDefault();
alert ('You have to pick a chain pitch first.');
$('#pitch').focus();
} else {
$.ajax({
type: 'GET',
url: 'includes/select-chain.php',
data: { pitch: + $('#pitch').val() },
beforeSend:function(){
// load a temporary image in a div
},
success:function(data){
$('#dialog-form').html(data);
},
error:function(){
$('#dialog-form').html('<p class="error"><strong>Oops!</strong></p>');
}
});
$( "#dialog-form" ).dialog( "open" );
}
});
/* Once a chain is selected update the contents to the form field for storing */
$( ".chainSelected" )
.click(function() {
$partNumber = $( this ).attr('href');
$partNumber = $partNumber.substring(1);
$partDesc = $(this).text();
$( "#chainSelectedPartNumber").val( $partNumber );
$( "#chainSelectedDesc" ).text( $partNumber + '-' + $partDesc );
$( "#linkedChainPartDescription").val( $( "#chainSelectedDesc" ).text() );
// Reformat the part number per Brian's Request
$masterPartNumber = $('#masterPartNumber').val();
if( $masterPartNumber.indexOf('-') != -1) { // xxxxxxxx-9
hyph = $masterPartNumber.indexOf('-');
$masterPartNumber = $masterPartNumber.substr(0, hyph) + '-' + $(this).attr('alt');
} else {
$masterPartNumber = $masterPartNumber + "-" + $(this).attr('alt');
}
$('#masterPartNumber').val( $masterPartNumber ); // main part number
$( "#dialog-form" ).dialog( "close" );
});
});
</script
这是弹出的 HTML 标记的样子
<a href="#DA520ERT2" alt="1" class="chainSelected">D.I.D. 520ERT2 GOLD PLATED LIGHTWEIGHT NON-O'RING OFF-ROAD CHAIN (450cc Rated) </a>