değerinin olup olmadığını kontrol etme Bir form girdisinin herhangi bir değeri olup olmadığını kontrol etmeye çalışıyorum (değerin ne olduğu önemli değil), böylece eğer verilmişse eylem URL'sine değeri ekleyebilirim var olmak. Değeri eklemeden önce paramın ismini eklemem gerekecek ve sadece sayfanın herhangi bir değeri olmadan "P =" gibi boş bir param adını bırakıyorum. ne olursa olsun gönderilen değerin onay yok,Form girdisi
<form name="form" id="form" method="post" action="">
<input type="text" id="p" value="">
<input type="text" id="q" value="">
<input type="submit" value="Update" onClick="getParam();">
</form>
Basit var yapacağını değer == 1 ayar düşünce:
function getParam() {
// reset url in case there were any previous params inputted
document.form.action = 'http://www.domain.com'
if (document.getElementById('p').value == 1) {
document.form.action += 'P=' + document.getElementById('p').value;
}
if (document.getElementbyId('q').value == 1) {
document.form.action += 'Q=' + document.getElementById('q').value;
}
}
ve form: Burada
kod bu öyleydi, ama sanırım yanılıyordum.Ayrıca, ifadeler kullanıyorum, ancak başka bir şeyim olmadığı için bunun kötü bir kod olduğuna inanıyorum. Belki de bir anahtar deyimi kullanarak, bunu nasıl kuracağımı bilmiyorum. Belki:
switch(value) {
case document.getElementById('p').value == 1 :
document.form.action += 'P=' + document.getElementById('p').value; :
case document.getElementById('q').value == 1 :
document.form.action += 'Q=' + document.getElementById('q').value; break;
}
3. =
' '.length
çünkü karşı kontrol daha iyidir. – kennebectrue, ancak bu durumda form sadece url'yi güncellemek içindir ve bu girdilerin kimliğine göre yakaladığı için gerçekten gerekli değildir. – Choy
Yönteminizin "GET" olarak değiştirilebileceğini ve değerlerin sorguya eklenebileceğini biliyor musunuz? Sunucu tarafındaki boş değerleri sorunsuz kullanabilmelisiniz; Ne demek istiyorsun * sayfa berbat *? – RedFilter