-4

これが JavaScript のコードで、HTML フォームの非表示フィールドに入力する innerhtml ボタンを作成したいのですが、AirportsForm.kod 変数を入力しようとすると、引用符に問題がある可能性があります...

function EditTableCell(a)
{
    var Myp= document.getElementById(a);
    var nam=Myp.textContent;
    var kod=Myp.id;
    alert(kod);
    var newHTML='<p id="'+a+'"><input size="35" type="text" name="edit'+a+'" id="edit'+a+'" value="'+nam+'" /><input type="button" value="Change" onclick="document.AirportsForm.kod.value='+"'a'"+'.value;document.AirportsForm.promena.value=document.AirportsForm.edit'+a+'.value;document.AirportsForm.submit();"/></p>';
}

ここにHTMLがあります:そのフォームはAirportsFormです

<input type="hidden" name="promena" id="promena" value="" />
<input type="hidden" name="kod" id="kod" value="" />

そして、Php では、$variable=$_POST["kod"]その他の隠し要素を実行します。

4

3 に答える 3

2

少しきれいにonclickします...内部で関数を呼び出し、そこでステップを実行します

var newHTML='<p id="'+a+'"><input size="35" type="text" name="edit'+a+'" id="edit'+a+'" value="'+nam+'" /><input type="button" value="Change" onclick="someFunction(\''+ a +'\')"/></p>';

function someFunction(a){
  document.AirportsForm.kod.value=a.value;
  document.AirportsForm.promena.value=document.AirportsForm.edita.value;
  document.AirportsForm.submit();
}
于 2012-12-14T10:33:29.493 に答える
0

getAttribute() 関数を使用して、属性値を次のように変更できます。

var kod=Myp.getAttribute('id');

詳細については、ここをクリックしてください

于 2012-12-14T10:33:31.007 に答える
0

ここで私はあなたのためにそれを完成させました、そして、あなたはここでhtmlObject要素または入力要素を取得するので、あなたはそれを行う必要がありますobject.idまたは値または取得したいものは何でも後で使用するより...

関数 EditTableCell(a) {

var Myp= document.getElementById(a);
var nam=Myp.textContent;
var newHTML='<p id="'+a+'"><input size="35" type="text" name="edit'+a+'" id="edit'+a+'" value="'+nam+'" /><input id="'+a+'" type="button" value="Change" onclick="document.AirportsForm.promena.value=document.AirportsForm.edit'+a+'.value;return subb(this);"/></p>';
Myp.innerHTML = newHTML;
Myp.onclick=null;
}
function subb(b)
 {
  document.AirportsForm.kod.value=b.id; 
    document.AirportsForm.submit();
 }
于 2012-12-14T11:13:22.633 に答える