我正在尝试将变量(区域)从onclick元素传递给ajax函数。 我正在使用PHP,SQL和插件http://t4t5.github.io/sweetalert/
这是我在index.php
的头部的代码 <script type"text/javascript">
function save(){
$.ajax({
type: "POST",
url: "addlandtovisited.php",
data: {region: region},
success: function(data) {
alert("Ajax save executed!");
}
});
}
</script>
<script>
jQuery(document).ready(function () {
jQuery('#vmap').vectorMap({
map: 'world_en',
backgroundColor: '#333333',
color: '#ffffff',
hoverOpacity: 0.7,
selectedColor: '#666666',
enableZoom: true,
showTooltip: true,
scaleColors: ['#C8EEFF', '#006491'],
values: sample_data,
normalizeFunction: 'polynomial',
onRegionClick: function (element, code, region) {
var boton = "button";
swal({
title: ''+region,
showCancelButton: true,
showConfirmButton: false,
text: '<a href="" onclick="save(region)">test</a>',
html: true
});
}
});
});
</script>
addlandtovisited.php:
<?php
if(isset($_POST['region'])){
?>
当我将字符串设置为ajax函数并从save(region)中删除该区域时,它可以正常工作:
data: {region: "TEST"},
text: '<a href="" onclick="save()">test</a>',
答案 0 :(得分:0)
如this thread所示,sweetalert repo存在一些问题。例如,我无法使swal渲染html文本在正文中。切换到sweetalert2并应用线程提到的补丁可能是个好主意。
我建议您使用确认按钮,而不是在swal
的正文中创建自己的链接。例如:
swal({
title: '' + region,
showCancelButton: true,
showConfirmButton: true,
confirmButtonText: "save",
text: "anything",
html: true
}, function() { // save button callback
save(region);
});
不要忘记将region
参数添加到save()
方法:save(region)
。