我可以结合提交($ _POST处理)和onClick(生成新元素)吗?

时间:2013-11-24 21:11:45

标签: javascript php html

我有一个问题,我想获得按下按钮的值(每次点击时都会生成新的输入字段),我不知道我是否能够这样做..

我有这个JS代码:

<script type=\"text/javascript\">
function addInput(divName){
          var newdiv = document.createElement('div');
          newdiv.innerHTML = \"<select name=idp[]>$options</select>;
</script>

这个带有html按钮类型的PHP代码

$t_prod = "";
$types = mysqli_query($db, "SELECT id_type, name_type FROM type_prod ORDER BY id_type");
while ($t = mysqli_fetch_assoc($types)) {
   $t_prod .= "<button type='button' name='typ' value='".$t['id_type']."' onclick=\"addInput('dynamicInput');\">ADD ".$t['name_type']." </button>";              
}

并且PHP代码生成了四个按钮,我想知道按下了哪个按钮(最好是id_type) - 因此将生成每个按钮的“特殊”生成内容。但我无法获得价值......我想到了一些($ _POST ['typ'])并根据按下的按钮数量调用函数addInput。

1 个答案:

答案 0 :(得分:0)

我相信它可以在客户端解决,只需使用this指针:

<button ... value="btn1" onclick="addInput(this)">
<button ... value="btn2" onclick="addInput(this)">

然后你可以在你的处理程序中访问它,即:

function addInput(obj) {
    if(obj.value=="btn1") // generate your innerHTML for the first button clicked
}

obj是被点击的元素