js のリフレッシュ操作テーブルの行と列_JavaScript スキルなし

WBOY
リリース: 2016-05-16 16:54:22
オリジナル
1142 人が閲覧しました

コードは参照用です。強制的にコピーする場合は、ページ ID を変更してください

コードをコピーします コードは次のとおりです。 🎜>

//修飾されたデータをデータベースにクエリします
function SelectAlterNativeVenues(field)
{
var xmlhttp;
var pid = document.getElementById("nameandaddress").value; 🎜>var url = "${RetrieveURL}?accessorType=${AccessorType}";
url = url "&method=RetrieveSelectResult&NameAndAddress="
if (window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE
}
if (xmlhttp != null)
{
xmlhttp.open("GET", url, true);
xmlhttp.setRequestHeader("If-Modified-Since", "0"); 🎜>xmlhttp.send(null);
xmlhttp.onreadystatechange = function processRefreshUsers() //登録メソッド
{
if (xmlhttp.readyState == 4)
{
if (xmlhttp .status == 200)
{
//responseXML は RetrieveCitiesByProvinceId メソッドの実行の戻り値を取得します
var datas = xmlhttp.responseXML.documentElement.getElementsByTagName("AlterNativeVenues");
var nname = document.getElementById("table1");
var pchildren = nname.childNodes;//テーブル内の行と列をクリアします
for(var a=0; a {
nname.removeChild(pchildren[a]);
}
//クエリ行を追加します
var aaRow=nname.insertRow(0);
var aaCell=aaRow.insertCell(0) );
aaCell.innerHTML="";
aaRow.insertCell(1).innerHTML="<スパン スタイル="cursor :pointer;border:1px" name="submit" onclick="SelectAlterNativeVenues('" field "');" >Query";
//タイトル行を追加
var aRow =nname .insertRow(1);
aRow.insertCell(0).innerHTML="name"; =" Address";
aRow.insertCell(3).innerHTML="Phone";
//データ行を追加するループ
for (i = 0; i {
var Id = datas[i].getElementsByTagName("Id")[0].firstChild.nodeValue;
var Name = datas[i].getElementsByTagName("Name")[0].firstChild .nodeValue;
var Address=datas[i].getElementsByTagName("Address")[0].firstChild.nodeValue;
var Phone=datas[i].getElementsByTagName("Phone")[0].firstChild .nodeValue;

var aNewRow=nname.insertRow(i 2);
aNewRow.insertCell(0).innerHTML="";
aNewRow.insertCell(1).innerHTML=Name;
aNewRow. insertCell(2 ).innerHTML=アドレス;
aNewRow.insertCell(3).innerHTML=電話;
}
}
}


//選択したデータを追加します
function AddRowSelectAfter(id,field)
{
//隠しフィールド内のすべての ID を分割し、対応する checked
var state =false をバインドします; //次のリストが存在するかどうかを判断します
var _hiddenId=document.getElementById(field).value.substr(0,document.getElementById(field).value.length-1).split(','); 🎜>for(j=0;j<_hiddenid.length>{
if(_hiddenId[j]==id.split('_')[1])
{
state=true;
}

}
if(state==false)
{
// チェックボックスをクリックするだけで非表示フィールドの値を変更できます
/ /非選択状態では、ID を非表示コントロールから削除する必要があります
var arrs=document.getElementById(field).value.substr(0,document.getElementById(field).value.length-1)。 split(', ');
//ID を取得するフィールドを定義します
var newids="";
for(var arr=0;arr{
if( arrs[arr]!=id.split('_')[1])
newids =arrs[arr] ",";
}
//非表示のコントロールを再割り当てします
// 最後の文字は
var fh=newids.substr(newids.length-1,newids.length);
if(fh==",")
document.getElementById(フィールド).value =newids.substr(0,newids.length-1);
else
document.getElementById(field).value=newids;


if(document.getElementById) (id).checked==false)
{
//クリックすると、選択された状態が非クリック状態に変更され、選択された会場が削除されます
document.getElementById(id).checked=false; >//Give tr 削除する ID を設定します
document.getElementById("table2").deleteRow(document.getElementById("NewRow_" id.split('_')[1]).rowIndex); >
}
else
{
document.getElementById(id).checked=true;
var input =document.getElementById(field); url = "${ RetrieveURL}?accessorType=${AccessorType}";
url = url "&method=SelectResult&id=" id;
if (window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest ();
}
else if (window.ActiveXObject)
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP") //IE
}
if (xmlhttp != null)
{
xmlhttp.open("GET", url, true);
xmlhttp.setRequestHeader("If-Modified-Since", "0");
xmlhttp.send(null);
xmlhttp.onreadystatechange = function processRefreshUsers() //登録メソッド
{
if (xmlhttp.readyState == 4)
{
if ( xmlhttp.status == 200)
{
//responseXML は、RetrieveCitiesByProvinceId メソッドを実行したときの戻り値を取得します。
var datas = xmlhttp.responseXML.documentElement.getElementsByTagName("AlterNativeVenues");
var nname = document .getElementById("table2");
nname.style.width="560px";
if(nname.rows.length==0&&datas.length>0)
{
//最初の行
var firstRow=nname.insertRow(0);
firstRow.id="NewRow_0";
firstRow.insertCell(1) ) .innerHTML="アドレス";
firstRow.insertCell(2).innerHTML="電話";
firstRow.insertCell(3).innerHTML="操作"; = 0; i < datas.length; i )
{
var Id = datas[i].getElementsByTagName("Id")[0].firstChild.nodeValue; ] .getElementsByTagName("名前")[0].firstChild.nodeValue;
var Address=datas[i].getElementsByTagName("Address")[0].firstChild.nodeValue;
var Phone=datas[i] ] .getElementsByTagName("電話")[0].firstChild.nodeValue;

var aNewRow=nname.insertRow(nname.rows.length);
aNewRow.id="NewRow_" Id; > var oneCell=aNewRow.insertCell(0);
oneCell.innerHTML=名前;
var twoCell=aNewRow.insertCell(1); ;
twoCell.width=280;
var twoCell=aNewRow.insertCell(2);
threeCell.width=100; ( 3);
fourCell.innerHTML="削除 ";
fourCell.width=40;
if(input.value!="")
input.value =",";
input.value =Id;
}
}
}
}
}
}
}
}

関数 DeleteRow(id,obj,field)
{
obj. parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode)
var nname = document.getElementById("table2");
if(nname.rows.length==1)
{
nname.deleteRow(0);
}
//クエリがデータベースに保存された後は、上記のリストは存在しません
if(document.getElementById("AlterNativeVenues_" id)!=null|| document.getElementById ("AlterNativeVenues_" id)!=未定義)
{
if(document.getElementById("AlterNativeVenues_" id).checked==true)
{
document.getElementById("AlterNativeVenues_ " id) .checked=false;
}
}
//チェックされていない状態では、非表示のコントロールから ID を削除する必要があります
var arrs=document.getElementById(field).value.substr(0, document .getElementById(field).value.length-1).split(',');
//ID を再度取得するフィールドを定義します
var newids="" for(var arr) =0; arr{
if(arrs[arr]!=id)
newids =arrs[arr] ",";
//再度非表示にする コントロールの割り当て
//非表示のコントロールを再割り当てする
//最後の文字は、
var fh=newids.substr(newids.length-1,newids.length);
if( fh ===",")
{
document.getElementById(field).value=newids.substr(0,newids.length-1);
}
else
ドキュメント。 getElementById(フィールド).value=newids;
}

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート