วิธีที่ง่ายที่สุดในการสร้างฟิลด์แบบฟอร์มการป้อนข้อมูลที่ซ่อนอยู่แบบไดนามิกโดยใช้ jQuery คืออะไร?
วิธีที่ง่ายที่สุดในการสร้างฟิลด์แบบฟอร์มการป้อนข้อมูลที่ซ่อนอยู่แบบไดนามิกโดยใช้ jQuery คืออะไร?
คำตอบ:
$('<input>').attr('type','hidden').appendTo('form');
ในการตอบคำถามที่สองของคุณ:
$('<input>').attr({
type: 'hidden',
id: 'foo',
name: 'bar'
}).appendTo('form');
.prop
ฟังก์ชันที่ใหม่กว่าใน API รุ่นใหม่กว่านี้หรือไม่
.prop
ไม่ใช่ "ของใหม่.attr
" อย่างที่หลายคนคิด คุณยังควรใช้.attr
เพื่อตั้งค่าคุณสมบัติ
$('#myformelement').append('<input type="hidden" name="myfieldname" value="myvalue" />');
เหมือนกับ David แต่ไม่มี attr ()
$('<input>', {
type: 'hidden',
id: 'foo',
name: 'foo',
value: 'bar'
}).appendTo('form');
หากคุณต้องการเพิ่มคุณสมบัติเพิ่มเติมให้ทำดังนี้:
$('<input>').attr('type','hidden').attr('name','foo[]').attr('value','bar').appendTo('form');
หรือ
$('<input>').attr({
type: 'hidden',
id: 'foo',
name: 'foo[]',
value: 'bar'
}).appendTo('form');
Unexpected identifier
นี้จะให้ข้อผิดพลาดคอนโซล
function addHidden(theForm, key, value) {
// Create a hidden input element, and append it to the form:
var input = document.createElement('input');
input.type = 'hidden';
input.name = key;'name-as-seen-at-the-server';
input.value = value;
theForm.appendChild(input);
}
// Form reference:
var theForm = document.forms['detParameterForm'];
// Add data:
addHidden(theForm, 'key-one', 'value');
'name-as-seen-at-the-server'
อะไร
ทำงานกับJSFIDDLE
หากรูปแบบของคุณเป็นเช่นนั้น
<form action="" method="get" id="hidden-element-test">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="submit" value="Submit">
</form>
<br><br>
<button id="add-input">Add hidden input</button>
<button id="add-textarea">Add hidden textarea</button>
คุณสามารถเพิ่มอินพุตและ textarea ที่ซ่อนไว้ให้อยู่ในรูปแบบนี้
$(document).ready(function(){
$("#add-input").on('click', function(){
$('#hidden-element-test').prepend('<input type="hidden" name="ipaddress" value="192.168.1.201" />');
alert('Hideen Input Added.');
});
$("#add-textarea").on('click', function(){
$('#hidden-element-test').prepend('<textarea name="instructions" style="display:none;">this is a test textarea</textarea>');
alert('Hideen Textarea Added.');
});
});
ตรวจสอบjsfiddleที่ใช้งานได้ที่นี่
$('<input type="hidden">').foo(...)
เป็นวิธีแก้ปัญหา