gpt4 book ai didi

javascript - 在 javascript ajax 中使用 perl cgi 值

转载 作者:行者123 更新时间:2023-12-02 16:40:37 26 4
gpt4 key购买 nike

我有一个 perl cgi 脚本,它接受 2 个参数。

我在同一个 cgi 脚本中有一个 jquery ajax block 。

现在我需要在 javascript block 内使用 cgi 脚本的这些参数值。

可以这样做吗?

if (param)
{
$insp_id = param("param1");
$section_id = param("param2");
}


my $html = <<BLOCK;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title> Handling Images order for Inspection: $insp_id and Section: $section_id </title>
<link rel="stylesheet" type="text/css" href="new_style.css">
<script type="text/javascript" src="jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('.reorder_link').on('click',function(){
jQuery("ul.reorder-photos-list").sortable({ tolerance: 'pointer' });
jQuery('.reorder_link').html('save reordering');
jQuery('.reorder_link').attr("id","save_reorder");
jQuery('#reorder-helper').slideDown('slow');
jQuery('.image_link').attr("href","javascript:void(0);");
jQuery('.image_link').css("cursor","move");
jQuery("#save_reorder").click(function( e ){
if( !jQuery("#save_reorder i").length )
{
jQuery(this).html('').prepend('<img src="img/refresh-animated.gif"/>');
//$(this).removeClass('addmsg2');
//$(this).html('<img src="images/refresh-animated.gif"/>');
jQuery("ul.reorder-photos-list").sortable('destroy');
jQuery("#reorder-helper").html( "Reordering Photos - This could take a moment. Please don't navigate away from this page." ).removeClass('light_box').addClass('notice notice_error');

var h = [];
jQuery("ul.reorder-photos-list li").each(function() { h.push(jQuery(this).attr('id').substr(9)); });
//var counter=0;
//for (counter=0; counter<h.length; counter++)
// document.write(h[counter] + "<br>");
jQuery.ajax({
type: "POST",
url: "DoImageReorder.cgi",
data: {ids: " " + h + "", insp_id:7004423 , section_id:1 },
success: function(html)
{
window.location.reload();
/*$("#reorder-helper").html( "Reorder Completed - Image reorder have been successfully completed. Please reload the page for testing the reorder." ).removeClass('light_box').addClass('notice notice_success');
jQuery('.reorder_link').html('reorder photos');
jQuery('.reorder_link').attr("id","");*/
}

});
return false;
}
e.preventDefault();
});
});

});
</script>
</head>
BLOCK

基本上我必须用 javascript ajax block 中的 insp_id 替换 7004423 。请指教。谢谢。

最佳答案

在服务器端,您可以将所有变量编码为 json 字符串,

use JSON;
my $json_text = encode_json({
insp_id => scalar param("param1"),
section_id => scalar param("param2"),
});

然后将该字符串添加到 jQuery 文档链中,

jQuery(document)
.data("JSON", $json_text) // all server side variables in one place
.ready(..)

最后使用变量作为,

var JSON = jQuery(document).data("JSON");
console.log(JSON.insp_id);

关于javascript - 在 javascript ajax 中使用 perl cgi 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27532522/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com