javascript - Cara menggunakan nextElementSibling untuk mencari nod seterusnya dalam js
天蓬老师
天蓬老师 2017-05-19 10:12:12
0
3
686
<script type="text/javascript">
    function getElements(){
    var x=document.getElementById("dialogArea");
    x.nextElementSibling.nextElementSibling.value="30";//该方法错误
    }
</script>

<input type="hidden" name="dinwei" class="dinwei" id="dialogArea" value="" />
<input name="myInput" type="text" size="20" value="How1 many input elements?"/>
<input name="myInput" type="text" size="20" value="How2 many input elements?"/>
<input name="myInput" type="text" size="20" value="How3 many input elements?"/>
<input type="button"  onclick="getElements()"value="button" />

1 Gunakan nextElementSibling untuk mencari nod seterusnya dengan id dialogArea dan ubah suai nilainya.
2 Hanya gunakan js asli tanpa jquery.
3 Tujuannya adalah untuk menggunakan input tersembunyi sebagai koordinat kedudukan untuk mencari input yang ditentukan apabila ID dan kelas input tidak dapat diperoleh dalam beberapa kes khas.

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

membalas semua(3)
迷茫

Bolehkah saya mendapatkan dom dengan meletakkan skrip di hadapan dom...

Saya salah membaca soalan, tetapi nampaknya tidak ada yang salah dengannya. Bolehkah anda menyiarkan tangkapan skrin laporan ralat? Tambahan pula, adalah lebih baik untuk menambah penghakiman eksistensial kepada penghakiman berterusan sedemikian, jika tidak masalah boleh timbul dengan mudah. Serupa dengan:

if (dom.next) {
    dom.next.next
}
给我你的怀抱

var test1 = document.getElementById('dialogArea');
var test2= test.nextElementSibling.nextElementSibling;

淡淡烟草味

Maka html anda tidak boleh dibalut baris Jika ia dibalut baris, akan ada jenis teks seterusnya di belakang setiap input Aksara kosong juga bersamaan dengan nod teks

var x=document.getElementById("dialogArea");
x.nextElementSibling.nextElementSibling.value = "30";
<input type="hidden" name="dinwei" class="dinwei" id="dialogArea" value="" /><input name="myInput" type="text" size="20" value="How1 many input elements?"/><input name="myInput" type="text" size="20" value="How2 many input elements?"/><input name="myInput" type="text" size="20" value="How3 many input elements?"/><input type="button"  onclick="getElements()"value="button" />
Sebaik-baiknya gunakan jquery Jika anda perlu menggunakan js, anda boleh menulisnya seperti ini.

var x=document.getElementById("dialogArea");
next(next(x)).value="30";

function next(e){
        e = e.nextSibling;
        if(e.nodeType == 3){ // 3是指text类型
            e = e.nextSibling;
        }
        return e;
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan