我有多个按钮元素,分配了以下id:'saveXX'和ID分配的相应段落元素='contentXX',段落元素的contentEditable属性设置为true。
以下工作和更新数据库:
$(document).ready(function(argument) {
$('#save81').click(function(){
$edit = $('#content81').html();
$cid = '81';
$.ajax({
url: 'include/editupdate.php',
type: 'post',
data: {data: $edit,cid: $cid},
datatype: 'html',
success: function(rsp){
alert(rsp);
}
});
});
});
我无法破解的问题 - 如何为任何id ='saveXX'按钮和相应的id ='contentXX'段落元素运行上述代码? XX与数据库记录有关。
非常感谢,Stew
答案 0 :(得分:2)
我宁愿将数字部分存储在数据属性中:
<input type="button" data-function="update" data-id="81" />
修改脚本以使用它:
$(input[data-function='update']).click(function(){
var id = $(this).data('id');
// ...
}
答案 1 :(得分:2)
您可以在所有按钮上使用公共类,并从元素中提取数字ID:
HTML:
<button id="save81" class="save">Save 81</button>
<button id="save82" class="save">Save 82</button>
使用Javascript:
$(document).ready(function (argument) {
$('.save').click(function () {
id = $(this).attr('id').replace('save','');
$edit = $('#content' + id).html();
$cid = id;
$.ajax({
url: 'include/editupdate.php',
type: 'post',
data: {
data: $edit,
cid: $cid
},
datatype: 'html',
success: function (rsp) {
alert(rsp);
}
});
});
});
答案 2 :(得分:1)
你可以在选择器上使用joker:
$('input[id^=save]').click(function(){
此处有更多详情:http://api.jquery.com/category/selectors/
然后你可以得到这样的数字:
var contentID = $(this).attr('id').replace('save', 'content');
$edit = $('#'+contentID).html();
$cid = $(this).attr('id').replace('save', '');
或使用正则表达式获取持续数字。