ใน HTML แต่ละ<input />องค์ประกอบจะเชื่อมโยงกับชื่อและค่า (แต่ไม่ซ้ำกัน) คู่เดียว คู่นี้จะถูกส่งไปในคำขอต่อมา (ในกรณีนี้เนื้อหาคำขอ POST) ก็ต่อเมื่อ<input />"สำเร็จ"
ดังนั้นหากคุณมีปัจจัยการผลิตเหล่านี้ในของคุณ <form> DOM :
<input type="text"     name="one"   value="foo"                        />
<input type="text"     name="two"   value="bar"    disabled="disabled" />
<input type="text"     name="three" value="first"                      />
<input type="text"     name="three" value="second"                     />
<input type="checkbox" name="four"  value="baz"                        />
<input type="checkbox" name="five"  value="baz"    checked="checked"   />
<input type="checkbox" name="six"   value="qux"    checked="checked" disabled="disabled" />
<input type="checkbox" name=""      value="seven"  checked="checked"   />
<input type="radio"    name="eight" value="corge"                      />
<input type="radio"    name="eight" value="grault" checked="checked"   />
<input type="radio"    name="eight" value="garply"                     />
จะสร้างคู่ชื่อ + ค่าเหล่านี้ซึ่งจะถูกส่งไปยังเซิร์ฟเวอร์:
one=foo
three=first
three=second
five=baz
eight=grault
สังเกตว่า:
twoและsixถูกยกเว้นเพราะพวกเขามีdisabledชุดแอตทริบิวต์ 
three ถูกส่งสองครั้งเนื่องจากมีอินพุตที่ใช้ได้สองรายการที่มีชื่อเดียวกัน 
four ไม่ได้ส่งเพราะมันเป็น checkboxที่ไม่checked 
sixไม่ได้ส่งแม้ว่าจะเป็นcheckedเพราะdisabledแอตทริบิวต์มีลำดับความสำคัญสูงกว่า 
sevenไม่ได้name=""ส่งแอตทริบิวต์ดังนั้นจึงไม่ได้ส่ง 
ด้วยความเคารพต่อคำถามของคุณ: คุณจะเห็นว่าช่องทำเครื่องหมายที่ไม่ได้ตรวจสอบจะไม่มีการส่งคู่ + ชื่อ + ค่าไปยังเซิร์ฟเวอร์ - แต่อินพุตอื่นที่ใช้ชื่อเดียวกันจะถูกส่งไปด้วย
เฟรมเวิร์กเช่น ASP.NET MVC ทำงานได้โดยจับคู่ทุกcheckboxอินพุตกับhiddenอินพุตใน HTML ที่เรนเดอร์เช่น:
@Html.CheckBoxFor( m => m.SomeBooleanProperty )
วาทกรรม:
<input type="checkbox" name="SomeBooleanProperty" value="true" />
<input type="hidden"   name="SomeBooleanProperty" value="false" />
หากผู้ใช้ไม่ได้ทำเครื่องหมายที่ช่องทำเครื่องหมายข้อมูลต่อไปนี้จะถูกส่งไปยังเซิร์ฟเวอร์:
SomeBooleanProperty=false
หากผู้ใช้ทำเครื่องหมายที่ช่องทำเครื่องหมายทั้งคู่จะถูกส่ง:
SomeBooleanProperty=true
SomeBooleanProperty=false
แต่เซิร์ฟเวอร์จะเพิกเฉยต่อ=falseเวอร์ชันเพราะเห็น=trueเวอร์ชั่นแล้วดังนั้นหากไม่เห็น=trueสามารถระบุได้ว่ามีการแสดงช่องทำเครื่องหมายและผู้ใช้ไม่ได้ตรวจสอบ - ซึ่งต่างจากSomeBooleanPropertyอินพุตที่ไม่ได้แสดงผลเลย