忙しい現代人の腰&肩のお悩み対策!

下の様にjavaScriptでボタンを追加したいのですが、
onclickイベントがHTMLにかかれません。
どうすればよろしいでしょうか。

よろしくお願いします。

var ele = document.createElement('input');
ele.type = 'button';
ele.value = 'ご意見へ';
ele.name = 'fNext';
ele.onclick = "sendRequest('FE0041')";
objct[0].parentNode.appendChild(ele);

A 回答 (3件)

既に回答がされていますが…



>onclickイベントがHTMLにかかれません。
ele.onclick = "sendRequest('FE0041')";
では文字列の『sendRequest('FE0041')』がonclick属性として設定されます。
append後にその要素のonclick属性を表示させてみれば、一応、設定されているようです。

ただし、文字列なのでスクリプトとしては実行されません。

function sendRequest(a) {} のような処理を実行したければ、No1様のような方法をとればよろしいかと。

この回答への補足

ありがとうございます。
ただ、FireFoxでは、できないのですが。

補足日時:2010/10/08 10:24
    • good
    • 0
この回答へのお礼

すみませんでした。
FFでも可能でした。
本当に助かりました。
ありがとうございます。

お礼日時:2010/10/08 11:09

 if('undefined' !== typeof window.addEventListener)


  ele.addEventListener('click',(function(parm){
return function(){sendRequest(parm)};
})('FE0041'),false);
 else if ('undefined' !== typeof window.attachEvent)
  ele.attachEvent('onclick',(function(parm){
return function(){sendRequest(parm)};
})('FE0041'))

 function sendRequest(parm){
  alert(parm);
 }
    • good
    • 0

>ele.onclick = "sendRequest('FE0041')";


では文字列を設定しているだけなので、何も起きないと思います。

ele.onclick = function() { sendRequest('FE0041') };
としたらどうでしょうか?
    • good
    • 1

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

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

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

Qjavascriptのボタン作成について

javascript勉強中の身なのですが、わからない所があったのでご教授お願いいたします。

勉強のため購入した本にあったサンプルの一部に、下記のような英字のボタンを作成する箇所がありました。
<script type="text/javascript">
var alpha="abcdefghijklmnopqrstuvwxyz";
var i;
for (i=0;i<26;i++){
document.write("<input type='button' onclick='disp(this)' value='"+alpha.charAt(i)+"' />");
if (alpha.charAt(i)=="m") {
document.write("<br />")
};
}
</script>

上記で問題なく動作しているのですが、input内のvalue='"+alpha.charAt(i)+"'の+が何故必要なのかよくわかりません。
もしかしたら基本的な事なのかもしれないですが、なぜ+が必要なのか疑問に思っている部分なのでお手数ですがご教授お願いします。

javascript勉強中の身なのですが、わからない所があったのでご教授お願いいたします。

勉強のため購入した本にあったサンプルの一部に、下記のような英字のボタンを作成する箇所がありました。
<script type="text/javascript">
var alpha="abcdefghijklmnopqrstuvwxyz";
var i;
for (i=0;i<26;i++){
document.write("<input type='button' onclick='disp(this)' value='"+alpha.charAt(i)+"' />");
if (alpha.charAt(i)=="m") {
document.write("<br />")
};
}
</script>

上記で問題なく動作しているのですが、...続きを読む

Aベストアンサー

document.write("");
として書き出す時、""内にJavaScriptは書けません。
ですから"を一旦"で閉じ、+としてalpha.charAt(i)が書かれています。

変数に代入する時も同様です。
var word = "abc";
として、

var str = "あああword";
と書いてもstrには
あああword
が代入されます。

var str = "あああ"+word;
と記載することで、
あああabc
を代入できます。

この場合の+は足し算のプラスではなく、続けて書きますよ。
という指令のようなものですね。

Qテキストボックスの入力をリセット

ボタンが押されたら、テキストボックスの入力内容を削除するにはどうしたらいいでしょうか?

Aベストアンサー

こんな感じ。

<form>
<input type=button value="clear" onClick="this.form.t.value = ''">
<input type=text size=50 name=t>
</form>

ボタンの this.form.t の t が、テキストの名前になっていて、押されると
空の文字列を入れる、だけです。

もし、フォーム全体のテキストをクリアするならば、こんな方法もあります。

<form>
<input type=button value="clear" onClick="this.form.reset()">
<input type=text size=50 name=t1>
<input type=text size=50 name=t2>
<input type=text size=50 name=t3>
</form>

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

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

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

Aベストアンサー

<select style="width: 200px">

Q複数のsubmitボタンで押されたボタンを取得する方法

form内の、submitボタンの値が拾えません。
1つだけsubmitボタンを設置すると値が拾えますが、
2つ以上submitボタンを設置すると拾えません。
仕様上、無理なのでしょうか?

<SCRIPT language="JavaScript">
function move_post(){
alert(document.frmMvPost.btn.value);
}
</SCRIPT>

<FORM name="frmMvPost" action="" method="post" onsubmit="return move_post()">
<INPUT type="submit" name="btn" value="テスト1">
<INPUT type="submit" name="btn" value="テスト2">
<INPUT type="submit" name="btn" value="テスト3">
</form>

Aベストアンサー

> alert(document.frmMvPost.btn.value);

btnというオブジェクトが複数あるため、btnは配列になってしまうため、
document.frmMvPost.btn.valueでは値が取れません。

回避策はonClickイベントにて値をHiddenへ格納すればOKです。

_____________________________________________________________

<SCRIPT language="JavaScript">
function move_post(){
alert(document.frmMvPost.onbtn.value);
}

function set_value(s_val)
{
document.frmMvPost.onbtn.value = s_val;
}

</SCRIPT>

<FORM name="frmMvPost" action="" method="post" onsubmit="return move_post()">
<INPUT type="submit" name="btn" value="テスト1" onClick="set_value('テスト1')">
<INPUT type="submit" name="btn" value="テスト2" onClick="set_value('テスト2')">
<INPUT type="submit" name="btn" value="テスト3" onClick="set_value('テスト3')">
<INPUT type="hidden" name="onbtn">
</form>

_____________________________________________________________


※テストしていないため動作は保証しません。問題ある場合にはお手数ですが何かしら手を加えてください。

> alert(document.frmMvPost.btn.value);

btnというオブジェクトが複数あるため、btnは配列になってしまうため、
document.frmMvPost.btn.valueでは値が取れません。

回避策はonClickイベントにて値をHiddenへ格納すればOKです。

_____________________________________________________________

<SCRIPT language="JavaScript">
function move_post(){
alert(document.frmMvPost.onbtn.value);
}

function set_value(s_val)
{
document.frmMvPost.onbtn.value = s_val;
}

</SCRIPT...続きを読む

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化したほうが、可読性が高くなると
思います。

QJavascriptでのbuttonのname属性、もしくはid属性を取得

押されたボタンのname属性、もしくはid属性を取得し、処理を分けるプログラムを考えています。
<form>タグ自体にid属性は存在しますが、name属性はありません。
その状況で、押されたボタンのid、もしくはnameを取得するにはどうしたらいいでしょうか?

Aベストアンサー

<input type="button" onclick="ckBtn(this)" (その他のパラメーター)>

の様に書けば、呼ばれた関数で

function ckBtn(button) {
alert('id=' + button.id);
alert('name=' + button.getAttribute('name');
}

の様に元の inputタグの属性を得られます。

# 上のコードはチェックしてないのでスペルミスとかあるかも知れません。

参考URL の 「DOM-HTMLを操作するための仕組み」を見てください。

参考URL:http://javascriptist.net/docs/js_ref_ext.html

Qhtml で 変数を定義できますか?

html(できればjava不使用)で変数に文字列をいれてつかう、またはそれに近いことはできないでしょうか?

例**************************
$color1="#000000"

<tr bgcolor=$color1>内容1<tr>
<tr bgcolor=$color1>内容2<tr>
****************************
みたいな感じです

Aベストアンサー

調べりゃ分かることは???だけど。

CSS2で無理やり作れば・・簡単だけど・・・
生成内容、自動番号振り、リスト ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/generate.html )
 本来はXSLTで作るほうがよいかと・・・
 <th><xsl:value-of select="parson" />の歌</th>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
<title>サンプル</title>
<meta name="author" content="ORUKA1951">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rev="made" href="mailto:orika1951@hoge.com" title="send a mail" >
<link rel="START" href="../index.html">
<style type="text/css">
<!--
.parson1:before{content:"田中";}
p.age1:after{content:"36歳";}
-->
</style>
</head>
<body>
<h1>サンプル</h1>
<p class="parson1">は男の子</p>
<p class="parson1 age1">の年齢は</p>
<p>私の彼氏は<span class="parson1">君だよ</p>
</body>
</html>

調べりゃ分かることは???だけど。

CSS2で無理やり作れば・・簡単だけど・・・
生成内容、自動番号振り、リスト ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/generate.html )
 本来はXSLTで作るほうがよいかと・・・
 <th><xsl:value-of select="parson" />の歌</th>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
<title>サンプル</title>
<met...続きを読む

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 );
}

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

Qテーブル内の文字サイズを変更したい。

HTMLのテーブル内の文字サイズを変更したいのですが。
イマイチ上手くいかずに悩んでいます。
出来れば全体的に<TABLE></TABLE>のほうでいじれますか?
<TD>タグや<TR>タグのところでいじくるのですか?

Aベストアンサー

いろいろやり方はありますが
文字単位でサイズを変更するには
#2の方法ですね。

テーブルごとやセル(<TD>)ごとにサイズを変更するには
スタイルシート(CSS)を使用します。

テーブルごとにサイズを変更する場合
<TABLE style="font-size : 20px;">

セル(<TD>)ごとにサイズを変更する場合
<TD style="font-size : 20px;">あああ</TD>

#1の方法だとページ内の全てのセル(<TD>)に設定することになります。

スタイルシート(CSS)はこれら以外にも
いろいろな設定方法があります。

Q特定内の
の色を変える

お世話になります。
特定<table>内の<td>の色を変える
<table id="abc">
<tr>
<td>あああああ</td>
<td>いいい</td>
<td>ううう</td>
</tr>
</table>
<table>にはidを定義します。
その<td>タグにはidを定義していません。
このとき、あああああ、いいい、うううの表示色を
<input type="button" value="色を変える" onClick="ChngColor()">

なんてことで、
マウスをクリックすることにより変更できないものでしょうか。
よろしくお願いいたします。

Aベストアンサー

#1さんへの補足より――

> functio ChngColor(){
> var Obj=document.getElementById('abc');
> Obj=document.getElementsByTagName("td");
> for (var i=0;i<Obj.length;i++){
> Obj.style.color="red";
> }
> }

特に3行目がいけない。こう変えましょう。
(あと、詰めすぎは見づらいので、適当に空白を入れました)

function ChngColor() {
var Obj1 = document.getElementById('abc');
var Obj2 = Obj1.getElementsByTagName("td");
for (var i = 0; i < Obj2.length; i++) {
Obj2[i].style.color = "red";
}
}


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

人気Q&Aランキング