1
1つのページに複数の類似フォームに関する質問があります。 2つ以上の投票があるページがあるとします。 HTMLのフォームは非常に単純です。以前は、インラインのjavascriptで構築されたソルーションでした。もちろん、それは最も良い解決策ではありません。それが構築された方法は、eacht投票フォームが独自のjs関数を持っていたということです。 これはもう私が欲しいワットではありません。ページ上の複数のフォームのjqueryにJavaScriptを書き換える
どのようにフォームを提出したか分かるようにスクリプトを書き直すことはできますか?ここで
は、現在の形である:
<div style="display:block;">
<form name="pollvoteform3" method="post" xaction="">
<input type="hidden" name="poll" value="3">
<input type="hidden" name="cmd" value="">
<div class="poll">
<div class="pollOption">
<div class="pollRadio"><input type="radio" name="poll_option3" value="1"></div>
<div class="pollOptionText">Option 1</div>
</div>
<div class="pollOption">
<div class="pollRadio"><input type="radio" name="poll_option3" value="2"></div>
<div class="pollOptionText">Option 2</div>
</div>
<p> <input type="button" name="bt_submit" class="pollButtonNormal" onmouseover="this.className='pollButtonHigh';" onmouseout="this.className='pollButtonNormal';" value="Stem" onclick="javascript:vote3();">
<input type="button" name="bt_submit" class="pollButtonNormal" onmouseover="this.className='pollButtonHigh';" onmouseout="this.className='pollButtonNormal';" value="Resultaten" onclick="javascript:viewResults3();"></p>
</div>
</form>
</div>
<div style="display:none;">
<form><input type="button" name="bt_submit" class="pollButtonNormal" onmouseover="this.className='pollButtonHigh';" onmouseout="this.className='pollButtonNormal';" value="Resultaten" onclick="javascript:viewResults3();"></form>
</div>
編集:jqueryのに
function vote1() {
r=document.forms.pollfvoteform3.poll_option3
var voted=false;
if (r.value!=null && r.checked)
{
voted=true;
} else {
for (i=0;i<r.length;i++){
if (r[i].checked) {
voted=true;
break;
}
}
}
if (voted) {
document.forms.pollvoteform3.submit();
} else {
alert("Youre wrong!.");
}
}
:
どのように私はこれを書き換えることができます。
この行の[0]の意味は次のとおりです。formId = $(this)[0] .id; – sanders
これはDOM要素です。 $(this)はjQueryラップされたセットです。 $(this).get(0)、または$(this)[0]はDOM要素を返します。もちろんthis.idを使用することもできますが、$(this)を使用すると、$(this).attr( "name")などの便利なjQuery関数を使用して属性を読み取ることができます。 – kgiannakakis
あなたはIDが '0'のフォームを取得したいと思っていますか? – sanders