[PR]ネットとスマホ OCNでまとめておトク!

checkboxをshiftキーを押しながらクリックすると複数選択するソースなのですが、
htmlファイルでは動作するのですが、以下のようにperl(cgiファイル)では複数選択できません。
もしかしたらjavaのコーディングの問題かもしれませんが、行き詰っております。
どなたかご教授お願い申し上げます。

↓-------------------------------------------
#!c:/Perl/bin/perl
require 'cgi-lib.pl';
require 'jcode.pl';
print "Content-type: text/html\n\n";

print <<EOM;
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.field_j.js"></script>
<script type="text/javascript">
var bIsFirebugReady = (!!window.console && !!window.console.log);
$(document).ready(
function (){
$("#idPluginVersion").text($.Field.version);
setLimitSelection();
$('input[name="chkRange"]').createCheckboxRange(function(bChecked){
$("label[for=" + this.id + "]").css("background-color", (bChecked) ? "#ffffff" : "");
});
$("#frmNavigation").autoAdvance();
window.oSelector = $("#selector");
}
);

function setLimitSelection(){
$('input[name="chkLimit"]').limitSelection(
{
limit: 3,
onfailure: function (n){
$("#idCheckboxMsg").html(
"You can not select more than " + n + " items."
);
return false;
},
onsuccess: function (n){
$("#idCheckboxMsg").html("");
return false;
}
}
);
$('select[name="selLimit"]').limitSelection(2);
}
</script>

<title>test</title>

</head>
<body>
<form action="" method="post" id="frmCreateCheckboxRange" onsubmit="return false;">
<p>
<table>
<tr>
<td>
<input type="checkbox" name="chkRange" id="chkRange_1" value="1" />
</td>
<td>
<input type="checkbox" name="chkRange" id="chkRange_2" value="2" />
</td>
<td>
<input type="checkbox" name="chkRange" id="chkRange_3" value="3" />
</td>
</tr>
</table>
</p>
</form>
</body>
</html>
EOM
↑------------------------------

このQ&Aに関連する最新のQ&A

A 回答 (1件)

print <<EOM;


なので、$(の部分がグループIDに置換されます。
他にも置換される箇所があるかもしれません。

本当にこのソースの通り、変数置換が一切必要ないのであれば、
print <<'EOM';
に変更するだけで動くと思います。

変数置換が必要ならば、CGIが出力したHTMLをよくみて、
意図しない置換が起きているところをみつけて、地道にエスケープしていってください。

もしピンとこないようなら「perl ヒアドキュメント 変数展開」
および「perlvar」あたりでぐぐってみてください
    • good
    • 0
この回答へのお礼

ご回答誠にありがとうございます。

>print <<'EOM';
>に変更するだけで動くと思います。
ご指摘の通りでした。
うまくいきました。
勉強になりました。
本当にありがとうございました。
敬具

お礼日時:2010/06/28 08:52

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qshiftキーを押しながらコマンドボタンをクリックについて。

shiftキーを押しながらコマンドボタンをクリックについて。

普通にコマンドボタン(<input type="button")をクリックした場合と、
shiftキーを押しながらコマンドボタンをクリックした場合の処理を分けたいのですが、
そういうことは可能なのでしょうか。
キーインの判断の方法が分かりません。
ご存知の方がおられましたらご教授願えませんでしょうか。
よろしくお願いします。
javascriptというより、htmlのカテゴリーかもしれませんが・・・ 。
 

Aベストアンサー

<input type="button" value="Test" onclick="event.shiftKey ? alert('yes'): alert('no')">


人気Q&Aランキング