我有一个表格,我正在使用选择选项,并根据选择,通过下面提供的脚本,在下一个单元格中显示一个值。我的问题是,我怎样才能获得新的出现值以便通过php处理它?例如,我选择“不”'从选择和下一个单元格中,' H'出现,我想存储' H'的价值。任何帮助是极大的赞赏。
表格的一部分
<td>
<select id="ynA4" name="ynA4">
<option selected disabled hidden style="display: none" value=""></option>
<option value="Yes">Yes</option>
<option value="No">No</option>
<option value="TBC">TBC</option>
<option value="N/A">N/A</option>
</select>
</td>
<td>
<script>
$('#ynA4').change(function() {
opt = $(this).val();
if (opt == "Yes") {
$('#hazardA4').html('');
} else if (opt == "No") {
$('#hazardA4').html('H');
} else if (opt == "TBC") {
$('#hazardA4').html('');
} else if (opt == "N/A") {
$('#hazardA4').html('N/A');
}
});
</script>
<div id="hazardA4"></div>
</td>
解决方案:#1
例如,如果&#39;否&#39;被选中,我想要&#39; H&#39;要存储,脚本将是这样的,
} else if (opt == "No") { $('#hazardA4').html('<input type="hidden" name="hazardA4" value="H">H');
解决方案:#2
<script>
var ynA4_val;
$(document).ready(function(){
$('#ynA4').change(function() {
opt = $(this).val();
if (opt == "Yes") {
$('#hazardA4').html('');
ynA4_val = '';
$('form').append('<input type="hidden" value="' +ynA4_val+ '" />');
} else if (opt == "No") {
$('#hazardA4').html('H');
ynA4_val = 'H';
$('form').append('<input type="hidden" value="' +ynA4_val+ '" />');
} else if (opt == "TBC") {
$('#hazardA4').html('');
ynA4_val = '';
$('form').append('<input type="hidden" value="' +ynA4_val+ '" />');
} else if (opt == "N/A") {
$('#hazardA4').html('N/A');
ynA4_val = 'N/A';
$('form').append('<input type="hidden" value="' +ynA4_val+ '" />');
}
}); //END #ynA4.change
}); //END document.ready
</script>
答案 0 :(得分:1)
<强>解决方案强>
根据@Ghost的建议, 例如,如果&#39;否&#39;被选中,我想要&#39; H&#39;要存储,脚本将是这样的,
} else if (opt == "No") { $('#hazardA4').html('<input type="hidden" name="hazardA4" value="H">H');
答案 1 :(得分:1)
您应该准备好文档中的var myHTML;
$('td.label').each(function() {
if( $(this).text() === "sign:" ) {
if( !myHTML ) {
myHTML = $(this).parent();
}
return false;
}
});
$('td.label').each(function() {
if( $(this).text() === "sign:" ) {
$(this).parent().append("some-html-element");
return false;
}
});
console.log(myHTML);
代码,否则脚本可能会触发并尝试将<script>
事件绑定到DOM中尚未存在的元素。< / p>
如果页面上只有一个表单,这将有效。否则,请将change
替换为$('form')
$('#yourFormID')
请注意,现在有两种方法可以获取该信息:
(1)通过以{!1}}
形式发布的隐藏表单元素(2)通过javascript中的全局变量<script>
var ynA4_val;
$(document).ready(function(){
$('#ynA4').change(function() {
opt = $(this).val();
if (opt == "Yes") {
$('#hazardA4').html('');
ynA4_val = '';
$('form').append('<input type="hidden" name="ynA4" value="' +ynA4_val+ '" />');
} else if (opt == "No") {
$('#hazardA4').html('H');
ynA4_val = 'H';
$('form').append('<input type="hidden" name="ynA4" value="' +ynA4_val+ '" />');
} else if (opt == "TBC") {
$('#hazardA4').html('');
ynA4_val = '';
$('form').append('<input type="hidden" name="ynA4" value="' +ynA4_val+ '" />');
} else if (opt == "N/A") {
$('#hazardA4').html('N/A');
ynA4_val = 'N/A';
$('form').append('<input type="hidden" name="ynA4" value="' +ynA4_val+ '" />');
}
}); //END #ynA4.change
}); //END document.ready
</script>
,您可以将其添加到通过AJAX发送的数据中。
(3)更新:请注意,我忽略了在原始答案中添加$sumthin = $_POST['ynA4']
属性。固定/更新。