トップページphp
1001コメント328KB

JavaScript質問コーナー

レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん03/10/03 12:30ID:ZbLXlHc8
立てました。
0908nobodyさん2006/03/30(木) 12:24:37ID:???
>905
'
どうでもいいけどvalueが本当にletになるならある意味凄いブラウザだな。
0909nobodyさん2006/03/30(木) 13:53:14ID:???
シングルクォートって HTML 的に OK だったっけ?
0910nobodyさん2006/03/30(木) 21:45:54ID:???
どっちでもOKみたい。属性値にダブルクオートが含まれる場合シングルクオートで囲えばいいし、逆も可。
もちろん実体参照使ってもいい。
0911nobodyさん2006/03/32(土) 21:40:25ID:???
JavaScript2.0でオブジェクト指向プログラミング
をするほうほうについて詳しく解説しているサイトや書籍とかないかな
0912nobodyさん2006/04/02(日) 12:35:49ID:UwXN7KEh
チェックボックスがチェックされているかどうかを調べるにはどうすれば
いいのでしょうか?
document.forms[0].チェックボックス名.valueの値を見ても、undefineと帰って
くるだけなんです。
0913nobodyさん2006/04/02(日) 13:21:57ID:???
checkedだっけ
0914nobodyさん2006/04/02(日) 16:27:57ID:5kzH5f7R
javascript:(function(){var messageTextArea = document.getElementsByTagName(
'textarea')[0]; var sp = '&' + 'nbsp;'; var tab = sp + sp + sp + sp;
var original = messageTextArea.value; var replaced = original.replace(
/^[ \t]+/mg, function(matchstr){return matchstr.replace(/\t/g, tab).replace(
/\s/g, sp);}); messageTextArea.value = replaced; if (confirm(
'Post OK?\n\n\n(Original)\n' + original + '\n\n(Replaced)\n' + replaced)) {
document.forms[0].submit.click(); }})();

これIE6で動かないんですけど、なにか分かる人いますか? Firefox1.5/Opera8.5は桶
0915nobodyさん2006/04/02(日) 16:45:00ID:???
>>914

document.forms[0].submit();で試してみ。
09169142006/04/02(日) 16:49:59ID:???
>>915
input type=submit name=submit があるから不可なのです。

更に、
* リンクをページに埋め込むと動作する、
* Bookmarkletにすると動かなくなります。
書いてませんでしたすんません
09179152006/04/02(日) 17:02:12ID:???
>>916
悪い。今試したら、
途中の余計なスペース外したら出来たぞ。
= (←こういうの)
09189142006/04/02(日) 17:20:11ID:???
>>917
おおっほんとだ。ありがとうございます。完成版貼っときます。

javascript:(function(){var messageTextArea=document.getElementsByTagName(
'textarea')[0];var sp='&'+'nbsp;';var tab=sp+sp+sp+sp;var original=
messageTextArea.value;var replaced=original.replace(/^[ \t]+/mg,function(
matchstr){return matchstr.replace(/\t/g,tab).replace(/ /g,sp);});
messageTextArea.value=replaced;if(confirm('Post OK?\n\n\n(Original)\n'+original
+'\n\n(Replaced)\n'+replaced)){document.forms[0].submit.click();}})();

でもなんでだろ・・・
0919nobodyさん2006/04/02(日) 17:58:45ID:???
前、javascriptをperlでhtmlの中に出力しようとしてたんだけど、
見づらいから改行したら使えなかったりしたな。
よくわからないけど面倒だよね。
0920nobodyさん2006/04/03(月) 08:12:18ID:YD4aZOo6
OBJECTタグで埋め込んだHTMLから、それが埋め込まれてるページ(親?)の
要素を取得することはできますか?
IFRAMEならparent使えるのに、OBJECTでは使えないようで困ってます。
親ページのテキストボックスに値を入れる、ということがしたいです。
0921nobodyさん2006/04/03(月) 10:10:52ID:???
Stringリテラルの中にそのまま改行を入れたい場合は
\ でエスケープしないとダメ

つかいつの時代の話だ
0922nobodyさん2006/04/04(火) 15:16:12ID:???
URLエスケープするとき、IEではunicodeになってしまいますが、SJISでエスケープする方法はあるでしょうか?
0923nobodyさん2006/04/04(火) 21:06:04ID:???
URLエスケープじゃなくてescapeだよね?
何でSJISでなきゃいかんの?
0924nobodyさん2006/04/05(水) 09:51:33ID:???
javaのweblogicサーバーが、unicodeエスケープでデータを受信すると
うまくエンコードできないようなので、SJISで転送しようと思っています。
0925nobodyさん2006/04/05(水) 18:53:42ID:???
Javaスレ探して解決策求める方が、JSで安全かつ確実に
SJISエンコードする方法探すより早いと思うけど。
0926nobodyさん2006/04/07(金) 12:02:26ID:fGo97YoI
ポップアップメニューをクリックした場所の上に出す
サンプルってどこかに無いでしょうか?
0927nobodyさん2006/04/07(金) 13:20:22ID:???
ポップアップメニューってブラウザの?
0928nobodyさん2006/04/07(金) 15:14:43ID:???
やっほー。俺が質問にきましたよ。

XMLHttpRequestで、readyStateが4になる前に、今までに読み込んだリクエストの内容を取得することは出来ませんか?
setTimeout使ってresponseText読むとエラーが出てしまうんです。何か良い方法あったら教えて欲しいです。
0929nobodyさん2006/04/08(土) 02:13:29ID:???
XMLHttpRequestを使わずにiframeを使えばtimerを使って読み込み途中のものが拾えると思う。やったことないけど。
0930nobodyさん2006/04/08(土) 05:50:42ID:???
質問です。
セキュリティー上、内部的に別のドメインからのダウンロードは禁止されていますが
http://www.abab^-^abab.kuni/
ってアドレスだった場合
http://sub.abab^-^abab.kuni/
からのダウンロードも不可なのでしょうか?
どうしてもサーバーの負荷分散(特に帯域)の為に分散したいんです。
0931nobodyさん2006/04/08(土) 09:13:45ID:???
>>929
ありが父ちゃん!
0932nobodyさん2006/04/08(土) 15:41:47ID:???
>>930
scriptタグを使用した非同期ロードならドメインの制限はないので帯域の分散には有効です。
○コード例
var obj = createElement( "script" )
document.body.appendChild( obj )
obj.src = "get.cgi";
f = function()
{
alert( data )
}
window.setTimeout( f, 1000 ); // 適当にwait
○get.cgiの出力例
data="aiueo";

0933nobodyさん2006/04/08(土) 20:13:27ID:???
それってsafariで動かないとか問題なかったっけ
0934nobodyさん2006/04/09(日) 08:30:15ID:???
画像を切り替えたい場合、
document.IMGNAME.src=
で切り替えたい画像の場所を指定すれば切り替わりますが、
同じように、A hrefの参照先を変えたい場合、どのようにすればよいのでしょうか?
0935nobodyさん2006/04/09(日) 09:11:16ID:???
楽天のオークション入札でポインヨもらえるやつ、
ttp://pochitto.oh.land.to/point.html
入札するのがマンドクセーので、スクリプトを組みたいんだけど
全くスクリプト言語知りません。。他スレでは子供でも組めるとか言われて終了w
どんなヒントでもいいので、知ってる方いたら教えてくだせぃ。お願いします!
0936nobodyさん2006/04/09(日) 13:13:57ID:???
>>934
document.getElementById( "ANAME" ).href = "http://xxx.yy"
とすれば変わります。
0937nobodyさん2006/04/10(月) 10:29:55ID:qYnFdAMk
PHPスレで誘導を促されてやってきました。
select hoge from table とやって取り出した内容を、selectでプルダウンにしています。
別窓を開いてそのtableに新規レコード(新規hoge)を追加した後、メインウインドウのそのプルダウンの内容を更新させる方法が知りたいです。
一回ブラウザをリロードさせて、もう一回mysqlを読みに行けば当然反映されますが、その直前に入力していたフォームの内容が消えてしまうので、selectの内容だけが更新されるような仕組みが知りたいです。
よろしくお願いします。
0938nobodyさん2006/04/12(水) 06:24:19ID:LsBK61rA
aタグに target="hoge" を指定して開いたウィンドウがあります。
開いた元のウィンドウからJavaScript で hoge を閉じたいのですが、hoge を参照する方法がわかりません。
hoge.close() じゃダメです。
どうやったらうまくいくでしょうか?
0939nobodyさん2006/04/12(水) 12:07:28ID:???
二つのテキストボックスがあって、一つ目は整数値を
二つ目は最低一つ、もしくは一つ目で入力された数値分
テキストボックス自体を表示したいのですが、これはJavaScriptで可能なんでしょうか?
DynamicHTMLとかになっちゃうのかな?
0940nobodyさん2006/04/12(水) 13:41:34ID:???
>>939
比較的新しいブラウザなら簡単だと思う。
たとえば <div id="hoge"></div> って部分を作って、
JavaScript から document.all.hoge.innerHTML に好きな数のテキストボックスのHTMLを入れてやればいい。
0941nobodyさん2006/04/12(水) 22:02:28ID:???
・やりたいこと
ボタン押したらカレンダーが表示される(同一Document内)
・やったこと
divの中にtableで表示させるのは完成したが、<select>があると下に回りこんで
しまって困ったのでiframeにしようとした。
→iframe内のDocumentにアクセスする方法がわからなくて困った。

iframe.document.appendChild()とかiframe.document.innerText()とか
色々試したのですがどうやっても出力されません。
どうすればiframe内に出力できますか?
おとなしく別ページにしたほうがいいですか?

<select>の下に回りこむのを除くと一応完成しているので、できれば
そのままソース使いまわしたいです。
0942nobodyさん2006/04/12(水) 23:53:44ID:???
>>941
iframe の name を hoge としたとき、

hoge.document.open();
hoge.document.write('hello world!');
hoge.document.close();

このコードは参考になりますか?
0943nobodyさん2006/04/12(水) 23:53:55ID:???
>>941
iframeにアクセスするには
document.getElementById("testiframe").contentWindow.document.body.innerHTML = "<div>test</div>";
のような感じでやればOK。
0944nobodyさん2006/04/13(木) 00:05:03ID:???
>>938
window.open()使えばclose()は簡単なのだが、それじゃダメ?
09459382006/04/13(木) 00:10:08ID:???
>>944
ちょっとした都合がありまして、window.open() を使わない方法が知りたいのです。
とは言え、このまま解決できなければ window.open() を使ってなんとかすることになるのですが・・・
0946nobodyさん2006/04/13(木) 12:30:55ID:???
ブラウザのフォームに入力されたパスワードを判別して、2番目の文字が
1、2、3のとき・・・のような、条件分岐のリンクを java で組もうと考えてます。
(他の文字や、文字数については無視。)
で、以下のとおり書いたのですが、やはり動きません。

----------------------

<script language="JavaScript">
<!--
function myButton(){
myPassWord = document.myFormText.myFormTextPass.value;
if ( myPassWord == "*1******" ) location.href = "secret1.html";
else if ( myPassWord == "*2******" ) location.href = "secret2.html";
else if ( myPassWord == "*3******" ) location.href = "secret3.html";
else location.href = "error.html";
}
// -->
</script>

<form name="myFormText">
パスワードを入れてね。
<input type="password" size="30" name="myFormTextPass">
<input type="button" value="OK" onclick="myButton()">
</form>

---------------------

たぶん 『 myPassWord == "*1******" 』 あたりが間違ってると思うのですが、
どなたか教えていただけませんでしょうか。 正しく動くようになれば幸いです。
0947nobodyさん2006/04/13(木) 13:15:43ID:???
>>946
Webプログラム板でJavascriptをJavaとかいうと笑われるぞ
(・∀・)ニヤニヤ
0948nobodyさん2006/04/13(木) 14:26:09ID:???
>>946
そりゃダメだよ。
たとえば myPassWord が "11111111" だったとすれば、これは "*1******" とは違うでしょ?
"*1******" はあくまで "*1******" って文字列だから。

とりあえず substr っていう関数を調べてみるといいよ。
これ使って myPassWord の 2文字目だけを切り出せばよろしい。

もう少し高度になると、match っていう関数もある。
使いこなせればかなり便利だけど、今のスキルじゃ多分無理。
いつか思い出したときに調べてみるといいと思う。
0949nobodyさん2006/04/13(木) 17:55:08ID:???
>>940
出来ましたああ(*´д`)

innerHTMLで調べていったら、昔見たクマーのAAを表示するやつ出てきて
ああこれかあと(笑 ありがとうございました
09509412006/04/13(木) 22:42:50ID:???
>>942,943
教えて頂いた方法で文字は表示できたのですが、createElement()で作った
オブジェクトを配置することができませんでした。
document.getElementById("iframe").contentWindow.document.appendChild(...)
が失敗します。(documentがない?)

おとなしく別ページ準備して出力することにします。
ありがとうございました。
0951nobodyさん2006/04/14(金) 00:07:45ID:???
index.htm
 ├top.htm("top")
 └main.htm("main")

◆top.htm◆
<script>
function func() {
 parent.main.func2("world");
}
</script>
<form name="submit1" action="#">
<input type="button" value="テスト1" onclick="func()">
</form>

◆main.htm◆
<script>
function func2(x) {
 document.clear();
 document.write("hello ",x,"!!");
}
</script>

のような構造で、「テスト1」をクリックすると一度はちゃんと表示されるのですが、もう一度クリックするとエラーになってしまいます。
(もちろんこれだと2回以上実行する必要はありませんが、実際にはtopのフォームには入力部もついていてその内容がmainに反映される仕組みです)

どうもページが一つ進んでいるのが原因(ブラウザのバックボタンで戻ればまた動作する)らしいので、
func内でfunc2を呼び出す前にhistory.go(-1)を入れてみたのですが、そしたら今度は1回実行させるのに2回クリックしないといけない状態になりました。
どうすればきちんと動作するのでしょうか?

ttp://www.uploda.org/uporg363680.lzh.html
にhistory.go(-1)を入れた状態のコードをUPしました。受信パスは「test」です。
0952nobodyさん2006/04/14(金) 00:28:21ID:???
>>951
func2 で main の document をクリアしちゃってるから、
func2 自身がいなくなっちゃうんでしょ。
だから 2度目は func2 が未定義でエラーになるんだよ。

構成を考え直した方がよいのでは?
0953nobodyさん2006/04/14(金) 00:54:42ID:???
>>952
あ…

どうもありがとうございます。考え直してみます。
0954nobodyさん2006/04/14(金) 01:13:39ID:???
あ…っれ、writeメソッドはフレームまたいでも普通に使えるんですね。
一番簡単なやり方を見落としていたようです。どうもありがとうございました。
0955nobodyさん2006/04/14(金) 04:39:16ID:???
昨日からJavaScriptを勉強しています。
質問なんですが、JavaScriptは、スタイルシートで定義したクラスや固有IDの中に設定している
各パラメータを変更するような仕組みはあるのでしょうか?
ちょっと調べた所、HTMLタグの操作ばかりだったので・・・
0956nobodyさん2006/04/14(金) 08:49:51ID:???
>>955
出来ると言うか、そういうメソッドを使う。
相当するメソッドが大抵ある。
もちろん、優先順位は、JavaScript>CSS>HTMLタグ
0957nobodyさん2006/04/14(金) 15:28:23ID:???
数日前から勉強し始めて、わけもわからずにこんなのを作ってみたのですが、
ttp://www.morphyone.info/brd/
javascript的?に作りのまずい所や改善すべき所などをご指導ください。
抽象的ですまんです。
0958nobodyさん2006/04/14(金) 18:27:10ID:???
>>957
>(4)不具合や要望は適切な方法で適切に伝える
>(5)文句は言わない

俺様気取りしたいだけなら公開なんざすんな気分悪い
0959nobodyさん2006/04/14(金) 18:29:12ID:???
>>958
あ。すみません。他のスレ用に作ってみたので文言がきつくなっていました。
修正します。
0960nobodyさん2006/04/14(金) 18:42:27ID:???
ひがんでいるだけじゃ?
0961nobodyさん2006/04/14(金) 19:06:43ID:???
やばい、おもしろかったw
0962nobodyさん2006/04/14(金) 20:58:18ID:???
今こうしてる間にもせっせと手を入れてるのね?
ちょっといたずらしたら対策されたみたい
0963nobodyさん2006/04/14(金) 21:17:30ID:???
>>962
いえいえ
子供を風呂に入れて戻ってきたら、スゴイのが出ていたので(w

直でpostされるとは思っても見ませんでした。
0964nobodyさん2006/04/14(金) 21:35:42ID:???
チェックがぬるい所がいくつかあるみたいだね。
早めに行数制限は掛けるべし。いや、すぐに掛けれ。
0965nobodyさん2006/04/14(金) 23:53:05ID:???
これかなり好きかもw
いいなぁ。
0966nobodyさん2006/04/15(土) 00:03:36ID:???
完成したら是非zipとかでまとめて公開してくれw
0967nobodyさん2006/04/15(土) 00:17:00ID:???
これ書き込みは何でやってるんだろ
Javascriptはかじり程度なのでソース見てもわからないや
0968nobodyさん2006/04/15(土) 01:15:03ID:???
>>964
すっかりわすれていました。
もう酒を呑んでしまったので、明日あたりにでも実装しようと思います。

>>965
ありがとうございます。

>>966
ブラウザチェックとか、まだ他人のモジュールを使っている部分があるので・・・。
javascriptとかブラウザとかよくわかっていないのです。そもそもhtmlも怪しかったり(w

>>967
PHPでMySQLのテーブルに出したり入れたりしています。


htmlとjavascript部分のレビュー用のチラウラを作りました。
ttp://morphyone.info/brd/review.php
ご指導のほど、よろしくおながいしますです。
0969nobodyさん2006/04/15(土) 01:31:31ID:???
>>968
init() は bodyタグの onLoad で呼び出すようにするってのは?
0970nobodyさん2006/04/15(土) 02:35:39ID:???
inputタグはXHTMLじゃなけりゃ/>で閉じなくても良かった筈。
文書の宣言次第でどうするか変えればいい感じだな。
0971nobodyさん2006/04/15(土) 02:37:15ID:???
それより form が閉じられてない
0972nobodyさん2006/04/15(土) 02:51:44ID:???
>>970
なるほど。そういうものなのですか。おぼえる事が沢山あるですね。とほほ

>>971
ありがとうございます。おはずかしい・・・ orz
0973nobodyさん2006/04/15(土) 03:01:33ID:???
これさ、PHPを動かせるサーバを持ってなくても使えるようにできそうだね。
レンタル掲示板とかに特定書式でPOSTするようにして、Ajax でその掲示板からデータ拾ってくるようにするとか。
そういうのも面白そうじゃない?
なんかやってみたくなってきたぞ。
09749732006/04/15(土) 03:37:20ID:???
tcup でやってみようとしたけど、うまく POST できないね。
リファラを見てるのかな
0975nobodyさん2006/04/15(土) 03:40:06ID:???
>>973
お前さんもなんか面白そうな事考えてそうだな。
楽しみに待ってる。
09769732006/04/15(土) 04:07:10ID:???
tcup に POST できた。
けど、Ajax って他ドメインへのリクエストができないのね。
隠しフレーム作ってやってみるかなぁ…
なんかドロドロしてきそうで嫌になってきた

>>975
あんまり期待しないで
09779732006/04/15(土) 04:20:30ID:???
自分のフレームでも、別ドメインの document は参照できないんだね。
さっそく手詰まりです。浅はかでした。
もう寝ます。おやすみ
0978nobodyさん2006/04/15(土) 04:22:00ID:???
次スレどうするか。
折角面白そうな試みしてるからもうちょっとひっそりやりたかったりする。
一応これだけ用意しとく。



【Javascriptの質問はこちらへ】
+ JavaScript の質問用スレッド vol.46 +
http://pc8.2ch.net/test/read.cgi/hp/1142242220/
【前スレ】
JavaScript質問コーナー
http://pc8.2ch.net/test/read.cgi/php/1065151808/
0979nobodyさん2006/04/16(日) 12:46:53ID:???
別ドメインへのクエストは、<SCRIPT>タグ使えば出来たって聞いたが・・
0980nobodyさん2006/04/16(日) 13:13:02ID:???
クエスト【quest】

探索。探求。
0981nobodyさん2006/04/17(月) 15:06:27ID:1c2Rsd3K
Webプログラミングという観点とはちょっと外れるけど、
Windowsのデスクトップで拡張子が .js のファイルを
ダブルクリックしたときに起動されるスクリプトエンジンは何?

JavaScript を使ったウェブページを閲覧しているときには
その JavaScript を実行しているのは iexplorer.exe ですよね?
0982nobodyさん2006/04/17(月) 19:44:18ID:???
WSH
0983nobodyさん2006/04/17(月) 20:32:34ID:1c2Rsd3K
>982 ありがとうございました。
0984nobodyさん2006/04/17(月) 20:43:13ID:???
>>979
http://jsgt.org/mt/archives/01/cat_aessaieoeo.html
0985nobodyさん2006/04/18(火) 00:19:00ID:???
>>984
それってロードできるのは基本的に js だけでしょ。
他ドメインの任意のページのHTMLを取得できれば >>973 が実現できるんだけどね。
0986nobodyさん2006/04/18(火) 01:43:52ID:???
cgiとかphpで取得だと元も子もないしな。
0987nobodyさん2006/04/18(火) 02:58:50ID:0F7Ccakt
別フレームの location.href に javascript:〜 を指定してなんとかしようとしてみたけど、やっぱりだめね。
まあこんなことができたら、重大なセキュリティホールになりかねないからねぇ
0988 ◆bbEepHUSG2 2006/04/18(火) 20:10:39ID:???
0989nobodyさん2006/04/19(水) 16:52:29ID:???

0990nobodyさん2006/04/19(水) 19:16:24ID:???

0991nobodyさん2006/04/19(水) 20:24:04ID:???



うつせみの世の人我れし春なかりけり
0992nobodyさん2006/04/20(木) 14:14:02ID:???
ほよよ
0993nobodyさん2006/04/20(木) 15:06:51ID:???
およよ
0994nobodyさん2006/04/20(木) 18:31:53ID:???
ぉょょ
0995nobodyさん2006/04/20(木) 19:18:34ID:???
鷹揚
0996nobodyさん2006/04/21(金) 07:14:04ID:???
JavaScript コメントの謎
http://pc8.2ch.net/test/read.cgi/php/1062745064/

こっち再利用ってことで。
0997nobodyさん2006/04/21(金) 13:28:55ID:???
>>998の意見を聞いた上で>>999が最終決断すること
0998nobodyさん2006/04/21(金) 14:20:33ID:???
どうでもいいけど、この板にもjavascriptスレの一つくらいは欲しいわな
0999nobodyさん2006/04/21(金) 18:06:53ID:y+LDIxXF
多少、JavaScriptの参考になるかもしれません!
http://www.yukinko-net.jp/computer/javascript/scriptlist.htm
1000nobodyさん2006/04/21(金) 18:22:37ID:S1g9gFc/
1000
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。