トップページ > プログラム > 2014年07月20日 > w7G2rcj5

書き込み順位&時間帯一覧

5 位/206 ID中時間01234567891011121314151617181920212223Total
書き込み数00000000000000613000000010



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
JavaScript 3
+ JavaScript の質問用スレッド vol.117 +

書き込みレス一覧

JavaScript 3
742 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:17:39.90 ID:w7G2rcj5
質問です。現在、selectのidごとに関数を呼び出していますが、もっと
簡略化してどのオプションから選択されたかに変えることはできるでしょうか?

$(function(){
$("#f1").each(function(){
        var pos;
        function call_list(){省略}
$(this).each(function(){call_list();});
$("#sel1").change(function(){
pos = $("#sel1 option:selected").val();
call_list();
});
$("#sel2").change(function(){
pos = $("#sel2 option:selected").val();
call_list();
});
});
});
</script>
</head>
<body>
<form id="f1">
<select id="sel1">
</select>
<select id="sel2">
</select>
<select id="sel3">
</select>
</form>
</body>
JavaScript 3
743 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:23:50.40 ID:w7G2rcj5
省略部分

$.ajax({
url:"ajax_call.php" ,type:"post",data:{"send":pos}
}).done(function(ret){
//alert(ret);
$("#sel2").children().remove();
$("#sel3").children().remove();
var i;
var sels = new Array("#sel1","#sel2","#sel3");
var pack = ret.split(":");
for( var i=0 ; i < pack.length; i++){
var sep = pack[i].split("@");
for(j=0;j< sep.length -1;j++){
var option = $("<option>");
var opt = option.html(sep[j]);
option.val(sep[j]);
var sel = opt.appendTo(option);
sel.appendTo(sels[i]);
}
}
}).fail(function(){
alert("error");
+ JavaScript の質問用スレッド vol.117 +
53 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:34:17.97 ID:w7G2rcj5
総合スレから飛んできました。現在、selectのidごとに関数を呼び出していますが、もっと
簡略化してどのオプションから選択されたかに変えることはできるでしょうか?

$(function(){
$("#f1").each(function(){
        var pos;
        function call_list(){省略}
$(this).each(function(){call_list();});
$("#sel1").change(function(){
pos = $("#sel1 option:selected").val();
call_list();
});
$("#sel2").change(function(){
pos = $("#sel2 option:selected").val();
call_list();
});
});
});
</script>
</head>
<body>
<form id="f1">
<select id="sel1">
</select>
<select id="sel2">
</select>
<select id="sel3">
</select>
</form>
</body>
+ JavaScript の質問用スレッド vol.117 +
54 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:35:17.73 ID:w7G2rcj5
省略部分

$.ajax({
url:"ajax_call.php" ,type:"post",data:{"send":pos}
}).done(function(ret){
//alert(ret);
$("#sel2").children().remove();
$("#sel3").children().remove();
var i;
var sels = new Array("#sel1","#sel2","#sel3");
var pack = ret.split(":");
for( var i=0 ; i < pack.length; i++){
var sep = pack[i].split("@");
for(j=0;j< sep.length -1;j++){
var option = $("<option>");
var opt = option.html(sep[j]);
option.val(sep[j]);
var sel = opt.appendTo(option);
sel.appendTo(sels[i]);
}
}
}).fail(function(){
alert("error");
+ JavaScript の質問用スレッド vol.117 +
55 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:37:11.95 ID:w7G2rcj5
補足
ajax,call.phpではMysqlに接続し、コールした値を連結してretに返します。@と:は区切り記号として使っているだけです
JavaScript 3
745 :デフォルトの名無しさん[sage]:2014/07/20(日) 14:38:42.01 ID:w7G2rcj5
ありがとう、逝ってきます。回答なしならまた戻ってくるかも知れません
JavaScript 3
757 :デフォルトの名無しさん[sage]:2014/07/20(日) 15:56:07.76 ID:w7G2rcj5
ありがとうございます、貼り替えてみて見事に動きませんでしたが、直したい部分はだいたい分かりました
+ JavaScript の質問用スレッド vol.117 +
56 :デフォルトの名無しさん[sage]:2014/07/20(日) 16:07:27.56 ID:w7G2rcj5
向こうのスレで親切に回答してくれました。ありがとうございます
JavaScript 3
761 :デフォルトの名無しさん[sage]:2014/07/20(日) 16:19:09.79 ID:w7G2rcj5
肝心のPHP文を見せてないですから無理もないですが、色々なテクニックが見られ、非常に
勉強になりました。まだ、理解できてない(無名関数の部分とか)所もいくつかありますが、
これもぜひ追っていきたいです

ちなみに、作成していたのは連動型プルダウンで、PHPからDBに接続し、コールされた値をつなげて
retに返すというものです。
JavaScript 3
764 :デフォルトの名無しさん[sage]:2014/07/20(日) 16:28:19.89 ID:w7G2rcj5
xamppなのでjson使えません…orz


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。