gooポイントが当たる質問投稿キャンペーン>>

初歩的な質問になるかもしれませんが、

javascriptのalertを使用し、表示された文字列をコピペ出来る方法はありますでしょうか?

したいことは、下記のalertで表示された【てすと】という文字をコピーして、
editorやワードなどに貼り付けることです。

ブラウザによって異なるのは実証済みです。
FireFoxでは、文字の反転はOKだが右クリックがきかない(Ctrl+Cでコピー・貼り付けはOK)
Chrome・IE では反転不可。

多くのブラウザでも同じように簡単にコピーできる方法があれば御教授ください。



<html>
<head>
<head/>
<body>

<script language="javascript">
<!--
function aaa(text) {
alert(text);
}
-->
</script>

<a href="javascript:void(0);" onclick="aaa('てすと');">onclick</a>

</body>
</html>


以上、宜しくお願い申し上げます。

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

A 回答 (4件)

dialog要素とポリフィルライブラリでも使ってください


http://demo.agektmr.com/dialog/

この回答への補足

ご回答ありがとうございます。
参照ページより実装を試みましたが、うまくいきません。
CSSの設定及びに何か外部のjsが必要なのでしょうか?

参照ページ上部の.show() and .close() APIを実装するという項目で

<html>
<head>
</head>

<body>

<dialog>
<p>This is da dialog!</p>
<button id="close">Close</button>
</dialog>
<button id="show">Open Dialog!</button>

<script>
var dialog = document.querySelector('dialog');
document.querySelector('#show').onclick = function() {
dialog.show();
};
document.querySelector('#close').onclick = function() {
dialog.close();
};
</script>

</body>
</html>

これだけではうまく動きませんが、上記ソースにどのように追記すれば
動くか御教授お願い申し上げます。

宜しくお願い申し上げます。

補足日時:2013/10/03 11:09
    • good
    • 0
この回答へのお礼

教えていただいた dialog要素 で調べているうちに自己解決致しました。

こちらのサイト様 http://memopad.bitter.jp/web/jQuery/jQueryTools/ …

を発見し、jqueryのjquery.tools.min.jsを参照して試行錯誤したらうまく動きました。

以下が実装ソースになります。

<!DOCTYPE html>
<head>
<script src="jquery.tools.min.js"></script>

<style>
.modal {
background-color:#fff;
display:none;
width:350px;
padding:15px;
text-align:left;
border:2px solid #333;

opacity:0.8;
-moz-border-radius:6px;
-webkit-border-radius:6px;
-moz-box-shadow: 0 0 50px #ccc;
-webkit-box-shadow: 0 0 50px #ccc;
}

.modal h2 {
margin:0px;
padding:10px 0 10px 45px;
border-bottom:1px solid #333;
font-size:20px;
}
</style>

</head>

<body>

<!-- the triggers -->
<p>
<button class="test" rel="#click">てすと</button>
</p>

<!-- dialog -->
<div class="modal" id="click">
<h2>閉じるときはOKボタンかESCボタンを押します</h2>

<p>
てすとてすとてすと
</p>

<!-- click buttons -->
<p>
<button class="close">閉じる</button>
</p>
</div>



<script>
$(document).ready(function() {
var triggers = $(".test").overlay({
mask: {
color: '#ebecff',
loadSpeed: 200,
opacity: 0.9
},
closeOnClick: false
});
});
</script>
</body>
</html>

皆様ありがとうございました。
重ねて御礼申し上げます。

お礼日時:2013/10/03 13:47

alert()に似たような物で、prompt()というのもあります。



http://www.htmq.com/js/window_prompt.shtml
    • good
    • 0
この回答へのお礼

恐縮ながらprompr()は存じておりましたが、なかなかうまくいかずに
別の方法を模索しておりました。
ありがとうございます。

お礼日時:2013/10/03 11:04

alertの仕様もだいぶ変わってきているので


画面上に表示させてコピーさせるような方法の方が確実だと思いますが。

<script>
function aaa(text) {
document.getElementById("debug").innerHTML=text;
return false;
}
</script>
<a href="#" onclick="return aaa('てすと');">onclick</a>
<div id="debug"></div>
    • good
    • 0
この回答へのお礼

ありがとうございます。
このような方法もあるのですね!
勉強になります。

お礼日時:2013/10/03 11:03

IEとChromeはダイアログが出てる状態でCtrl+Cでコピーできたはずですよ。

    • good
    • 0
この回答へのお礼

ありがとうございます。
Ctrl+Cでコピーできたんですね!反転しなかったので出来ないものだと勘違いしておりました。

お礼日時:2013/10/03 11:02

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

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

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

Qidを使わずにonclickで自身の要素取得

javascriptで
<a href="XXX.XXX" title="ゴール" onclick="element()">test</a>
function() {
idを使わずにここにtitle属性のゴールを習得する方法を記述したいのですが、わかりません
よろしくお願いします
}

Aベストアンサー

こんにちは。


==== HTML
<a href="" title="ゴール" onclick="getTitle(this);return false;">test</a>
<a href="" title="スタート" onclick="getTitle(this);return false;">test2</a>


==== JavaScript
function getTitle ( obj ) {
var title = obj.getAttribute('title');
alert ( title );
}

こういうことでしょうか。
違っていたらすみません。

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

QJavaScriptde途中で、「exit」するには?

function kensaku(){
s_data = document.kaiin_form.input_name.value;

if(!s_data){ alert("キーワードを入れて下さい!"); }

if(s_data != dumy){ ...... }
for(i=st_no;i<=n;i++){
......省略.................;
.......省略................}
}

----------------------------------
3行目で表示されたアラートをOKで閉じても、4行目以下が実行されてしまいます。
3行目でexitするにはどうすれば良いでしょうか?

Aベストアンサー

>関数(kensaku())からは抜けられませんでした。
そうですね、勘違いしていました、f(^^;
すみません。
if(!s_data){
alert("キーワードを入れて下さい!");
return;
}
ですね。

QHTMLフォームのSELECTの幅を一定にするためには?

HTMLフォームのSELECTの幅を一定にするためにはどのようにすれば
いいのでしょうか?

CSS等で設定できるとありがたいのですが、やり方がわかりません。

Aベストアンサー

<select style="width: 200px">

Qconfirm の OK、キャンセル 以外の文字を

javascript の confirm  で、OK、キャンセル以外の文字を出す方法を探しています。

「出せません」とか、「showModalDialog を使用し自作のダイアログ」とかしか見つかりません。

JavaScript だけで、出来ないものなのでしょうか?

Aベストアンサー

jQueryUIのDialogでできます。

以下のサイトの下の方に例が載っていて、そのうちDialog3の例で
OK、キャンセル以外の文字を設定しています。
http://stacktrace.jp/jquery/ui/widgets/dialog.html

Javascriptだけで実現していますが、confirmを使っていないので
質問の意図からはずれてるかもしれませんが。

Q「いずれか」と「いづれか」どっちが正しい!?

教えて下さいっ!
”どちらか”と言う意味の「いずれか」のかな表記として
「いずれか」と「いづれか」のどちらが正しいのでしょう???

私は「いずれか」だと思うんですが、辞書に「いずれか・いづ--。」と書いてあり、???になってしまいました。
どちらでもいいってことでしょうか?

Aベストアンサー

「いずれか」が正しいです.
「いづれ」は「いずれ」の歴史的かな遣いですので,昔は「いづれ」が使われていましたが,現代では「いずれ」で統一することになっていますので,「いずれ」が正しいです.

Qhtmlで文字列をクリップボードにコピーしたい

簡単な文字列をHTMLを使ってクリップボードにコピーしたいのですが、なかなかうまくいきません。
IEでHTMLを起動させて、コピペして使いたいのですが。

ポイントは…
・改行しても認識してそのまま文字列をコピーできること
・ボタンを一つのHTMLページ内に複数設置したいこと(なのでおそらく名前をボタンごとにつけるのだと思いますが…)


http://auctempnavi.fc2web.com/waza/copy.html
上記のやり方では一応可能でしたが、テキストエリアが邪魔なのと、ボタンを横に並べたくても縦方向に追加されてしまう…という部分で行き詰りました。


http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q107558700
上記の形だと理由は不明なのですが、改行を認識してくれない。うまく起動するときとしないときがある(もしかしたら名前付けがうまくいっていないのかも知れません)

どなたか知恵を貸して頂ければ幸いです。

Aベストアンサー

<input type="button" value="住所" onclick="this.select(); clipboardData.setData('text','[住所]〒000-0000\n○○県○○市○○町\n○-○-○\n[氏名]○○ ○○○\n[TEL]○○○-○○○-○○○○');">
<br>
<input type="button" value="番号" onclick="this.select(); clipboardData.setData('text','1234567980');">
<br>
<input type="button" value="落札された場合の定型文" onclick="this.select(); clipboardData.setData('text','お世話になります。\nこの度、商品を落札致しました。○○でございます。\n早速ですが、下記に詳細を記載しておりますのでご確認下さい。');">

IE限定ですけど、コピーできます。
ローカルでは(ブロックされているコンテンツを許可)が必要ですが。

<input type="button" value="住所" onclick="this.select(); clipboardData.setData('text','[住所]〒000-0000\n○○県○○市○○町\n○-○-○\n[氏名]○○ ○○○\n[TEL]○○○-○○○-○○○○');">
<br>
<input type="button" value="番号" onclick="this.select(); clipboardData.setData('text','1234567980');">
<br>
<input type="button" value="落札された場合の定型文" onclick="this.select(); clipboardData.setData('text','お世話になります。\nこの度、商品を落札致しました。○○でございます。\n早...続きを読む

Q文字列が入っているtdを削除せず非表示にしたい

aboutをクラスとする列(以下、about列)を非表示にしようと、次のような設定をしました。

<style type="text/css">
th.about,
td.about{
width:0px;
border:0px;
}
</style>


<table>
<tr>
<th class="about">右が1へのリンクになります</th>
<th><a href="http://www1..com">ウェブサイト1</a></th>
</tr>
<tr>
<tr>
<td class="about">右が2へのリンクになります</td>
<td><a href="http://www.2.com">ウェブサイト2</a></td>
</tr>
<tr>


</tr>
</table>

aboutの長さ自体を0にするように設定したため、about列は表示されないはずなのですが、"右が1へのリンクになります"、"右が2への~"と表示されます。
プログラムの動作にかかわるので、about列を削除することなく、CSSなどを設定することでabout列を非表示にしたいのですが、何か上手な方法はあるでしょうか。

よろしくお願いします。

aboutをクラスとする列(以下、about列)を非表示にしようと、次のような設定をしました。

<style type="text/css">
th.about,
td.about{
width:0px;
border:0px;
}
</style>


<table>
<tr>
<th class="about">右が1へのリンクになります</th>
<th><a href="http://www1..com">ウェブサイト1</a></th>
</tr>
<tr>
<tr>
<td class="about">右が2へのリンクになります</td>
<td><a href="http://www.2.com">ウェブサイト2</a></td>
</tr>
<tr>


</tr>
</table>

aboutの長さ自体を0にするように設定し...続きを読む

Aベストアンサー

<table summary="なんたらの表">
<caption>なんたらの表</caption>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

<table summary="ほげほげの表">
<caption>ほげほげの表</cpation>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

<table summary="むにゃむにゃの表">
<caption>むにゃむにゃ</cpation>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

<table summary="へんてこな表">
<caption>へんてこ</cpation>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

だとして、
table{
border-collapse:collapse;
border:solid 1px gray;
}
td,th{border:dotted 1px gray;width:20em;
}
table[summary="なんたらの表"] td,table[summary="なんたらの表"] th{display:none;}
table[summary="なんたらの表"] *+td,table[summary="なんたらの表"] *+th{display:table-cell;}

table[summary="ほげほげの表"] td,table[summary="ほげほげの表"] th{visibility:hidden;}
table[summary="ほげほげの表"] *+td,table[summary="ほげほげの表"] *+th{visibility:visible;}

table[summary="むにゃむにゃの表"] td:first-child,table[summary="むにゃむにゃの表"] th:first-child{display:none;}

table[summary="へんてこな"] td:first-child,table[summary="へんてこな表"] th:first-child{visibility:hidden;}


消滅させるならdisplay:none;→display:table-cell;
存在は残すけど表示させないならvisibility:hidden;→visibility:visibble;

セレクタは適当に・・・
隣接セレクタを使うなら +
第一列なら、擬似クラス:first

<table summary="なんたらの表">
<caption>なんたらの表</caption>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

<table summary="ほげほげの表">
<caption>ほげほげの表</cpation>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>
<tr>
<td>・・・・</td>
<td>・・・・</td>
</tr>
</tbody>
</table>

<table summary="むにゃむにゃの表">
<caption>むにゃむにゃ</cpation>
<tbody>
<tr>
<th>・・・</th>
<th>・・・</th>
</tr>...続きを読む

QINPUTでデフォルト値(数値)をあらかじめセットしておきたい

INPUT時に入力BOXへ入力しますが、ここにあらかじめ数値をセットしておきたいと思います。
どのようにするのでしょうか?
通常だと空白なので、そこに手で「123」のように入力しないとだめなのですが、あらかじめ「123」を入れておいて入力の簡便化を図りたいと思います。
よろしくお願いいたします。

Aベストアンサー

# 状況の説明を適切にしましょう
> tokcodeという項目名に「123」が入っている場合に項目名で指定する方法がわかりません。

クライアントスクリプトで処理する事お望みですか?
それとも サーバーサイドの動的な変更をお望みなのでしょうか

それにより処理法方が異なります

クライアントサイドならVBScriptやJavaScriptを記述して希望するイベント条件でエレメントを特定しデータを取得、更新します

たとえば ページが完成した場合なら bodyタグ(またはWindow)のonloadイベントで処理します
< script type="text/javascript" >
function myLoad()
{
  var objSrc, objTrg;
  objSrc = document.getElementById("tockcode");
  objTrg = document.getelementById("txt1");
  if ( ( objSrc != "undefined" ) && (objTrg != "undefined" ) ){
    objTrg.value = objSrc.value;
  }
}
window.onload = myLoad;
</scriipt>
といった具合になります

サーバーサイドの場合 tockcodeの詳細が不明なので …
<%
dim sTockCodeValue
sTockCodeValue = サーバサイドでtockcodeからデータを取得
%>
<input type="text" id="txt1" value="<%= sTockCodeValue %>">
といった記述でしょう

# 状況の説明を適切にしましょう
> tokcodeという項目名に「123」が入っている場合に項目名で指定する方法がわかりません。

クライアントスクリプトで処理する事お望みですか?
それとも サーバーサイドの動的な変更をお望みなのでしょうか

それにより処理法方が異なります

クライアントサイドならVBScriptやJavaScriptを記述して希望するイベント条件でエレメントを特定しデータを取得、更新します

たとえば ページが完成した場合なら bodyタグ(またはWindow)のonloadイベントで処理します
< sc...続きを読む

Q外部ファイルにしたら文字化けしてしまいました

FC2ブログで下記【1】を

<script type="text/javascript">
<!--
【1】
// -->
</script>

で囲んで直接プラグインに書き込んだら
文字化けせずに表示されたのですが、

外部ファイルにして

<script type="text/javascript" src="【1】のJSファイルのパス"></script>

をプラグインに書き込んだら、
画像リンクはうまく表示されたのですが、
文字化けしてしまいました。

文字化けしない方法はないでしょうか?


【1】
// ランダムに画像を表示する
jmp = new Array();
img = new Array();
// ジャンプ先のアドレス(数字は画像と対応)
jmp[0] = "http://~";
jmp[1] = "http://~";
jmp[2] = "http://~";
jmp[3] = "http://~";
jmp[4] = "http://~";
// 画像のアドレス(数字はジャンプ先のアドレスと対応)
img[0] = "img/img1.jpg";
img[1] = "img/img2.jpg";
img[2] = "img/img3.jpg";
img[3] = "img/img4.jpg";
img[4] = "img/img5.jpg";
n = Math.floor(Math.random()*jmp.length);
document.write("<a href='"+jmp[n]+"' target='_blank'>");
document.write("<img src='"+img[n]+"' border='0'>");
document.write("</a>");

FC2ブログで下記【1】を

<script type="text/javascript">
<!--
【1】
// -->
</script>

で囲んで直接プラグインに書き込んだら
文字化けせずに表示されたのですが、

外部ファイルにして

<script type="text/javascript" src="【1】のJSファイルのパス"></script>

をプラグインに書き込んだら、
画像リンクはうまく表示されたのですが、
文字化けしてしまいました。

文字化けしない方法はないでしょうか?


【1】
// ランダムに画像を表示する
jmp = new Array();
img = new Array();
// ジャンプ先...続きを読む

Aベストアンサー

自分は5歳児だろうが主婦だろうが手は抜きません。


とりあえず試しに、

<script type="text/javascript" src="JSファイルへのパス" charset="Shift-JIS"></script>

~と言う風にしてみて下さい( charset="Shift-JIS" というのを付け足す)。それで文字化けが直るようなら、貴方のJSファイルの文字コードは「Shift-JIS」と言う事になります。FC2のBlogサービスですか?それでHPやBlogを作っているのなら、基本的には文字コードはサーバ側、つまりこの場合は「EUC-JP」に統一するべき~という事になります。

一般的に、Windowsの標準の環境だと。前段で述べた様な、様々な種類の文字コードを扱う事が出来ないので。事実上、作業は「Shift-JIS」1択と言う事になります。また『メモ帳(notepad.exe)』では「改行コード」を編集出来ないので、HTMLやJavaScript(JSファイル)を編集するには力不足です。何か特別なソフトとかを使わずに、Windows標準の『メモ帳(notepad.exe)』でJSファイルを編集したのであれば、十中八九、文字コードは「Shift-JIS」になっているはずです。


>文字コード
「文字コード」とは、コンピュータ上でテキストファイル(*.txt)をやり取りする時の方式の事で、現在では100種類近くの文字コードがあります。インターネット上でよく使われる文字コードは、「UTF-8」、「Shift-JIS」、「EUC-JP」~の3種類で、基本的にはこれだけ押さえておけばOKです。

考え方としては、日本語や英語のように。同じ意味を持つ文書でも色んな国の言葉で書く事が出来る様に。コンピュータ上での文書の表し方にも方言というか、色んな国の言葉がある様な物だと思ってて下さい。先に述べた「改行コード」や「BOM無し」とかは忘れて下さい。

で、初心者はコレだけ覚えて置いて欲しいのですが…

・半角英数文字だけなら文字化けは起きない

~と(実際は違いますが、話がややこしくなるので簡単にします)。半角英数文字ってのは「abc,?!#123456+-=」みたいな文字の事です。全角文字とは違うので注意して下さい(全角文字 → abc,?!#123456+-=)。従って逆説的に言えば「日本語を使う時は常に文字コードの影響を受ける」と言う事です。

自分は5歳児だろうが主婦だろうが手は抜きません。


とりあえず試しに、

<script type="text/javascript" src="JSファイルへのパス" charset="Shift-JIS"></script>

~と言う風にしてみて下さい( charset="Shift-JIS" というのを付け足す)。それで文字化けが直るようなら、貴方のJSファイルの文字コードは「Shift-JIS」と言う事になります。FC2のBlogサービスですか?それでHPやBlogを作っているのなら、基本的には文字コードはサーバ側、つまりこの場合は「EUC-JP」に統一するべき~という事になります。

...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング