【问题标题】:How to insert the value of dynamically radio button using PHP?如何使用 PHP 插入动态单选按钮的值?
【发布时间】:2016-05-25 03:46:21
【问题描述】:

我有一个 html 表格,每个表格行都有一个动态生成的单选按钮。单选按钮中的每个选项都有一个动态生成的唯一 ID。但是这个id还没有保存在数据库中。

如何插入选项ID?以及如何更新该选项 ID 中的选项答案?请帮我。我试图插入这些值,但我没有运气

场景:

单选按钮有一个默认值,即“否”。当用户更改默认值时,会有一个确认框询问用户是否要处理。如果用户单击“确定”,默认值将变为“是”。

用于 html 表的 PHP:

    echo '<td id="resumeFile'.$optionId.'">' . $record_s->attachment_resume_id . '</td>';
    echo '<td id="processedYes><label for="Yes">Yes</label>
              <input type="radio" id="processedOptionYes'.$optionId.'" name="processedOption" value="Yes" onclick="proccessedCheck('.$optionId.',\'Yes\')"/>
              <label for="No">No</label>
              <input type="radio" id="processedOptionNo'.$optionId.'" name="processedOption" value="No" checked="checked" onclick="proccessedCheck('.$optionId.',\'No\')" echo $record_s->process_resume === "No" checked="checked"/>/>No</td>';
    echo '</tr>';
        }
    echo '</table>';
}

if (isset($_POST['optionId']) && $_POST['optionId']){
    $optionId = $_POST['optionId'];
    $queryOptionId = $wpdb->query("INSERT INTO resume_databank(process_resume_id) VALUES ('$optionId')");
}

隐藏形式:

<form id='hiddenForm' method='POST' action=''>
    <input type="hidden" id="inputHidden1" name="optionId" />
    <input type="hidden" id="inputHidden2" name="optionAnswer" />
</form>

JS:

function proccessedCheck(optionId,optionAnswer){
    if(optionAnswer == 'Yes'){
        if (confirm('You have chosen ' + optionAnswer + ', is this correct?')){
            jQuery("#processedOptionYes" + optionId).attr('disabled',true);
            jQuery("#processedOptionNo" + optionId).attr('disabled',true);
            var withlink = jQuery("#resumeFile"+ optionId).html();
            var withoutlink = jQuery(withlink).html();
            jQuery("#resumeFile"+optionId).html("").append(withoutlink);
            jQuery("#inputHidden1").val(optionId);
            jQuery("#inputHidden2").val(optionAnswer);
            jQuery("#hiddenForm").submit();
        }
    }
}

【问题讨论】:

  • 第一个隐藏文件更改为文本框并检查单选按钮选择时,正确放置隐藏文件

标签: javascript php jquery html mysql


【解决方案1】:

您好,您可以像下面这样在输入类型中使用类而不是函数来更改 jquery,将类 radiods 添加到输入类型 = radio。

$(".radiods").click(function(){
    var clickid = this.id;
    if($('input:radio[name=processedOption]:checked').val() == "Yes")
    {
        if (confirm('You have chosen YES, is this correct?'))
        {
            $("#inputHidden1").val(clickid);
            $("#inputHidden2").val("Yes");
        }
    }
});

然后使用ajax在数据库中更新,所以不需要表单

【讨论】:

【解决方案2】:

我不使用 Jquery,但 Javascript 读取值非常简单。它与复选框值相同,为 true 时被选中。

遍历您的表单字段以查找选中的项目

var formObj = document.getElementById('hiddenform');
for(var i = 0;i < formObj.elements.length;i++){
   radiovalues[] = escape(formObj.elements[id].checked);
}

大多数字段都有一个值,即文本、隐藏、密码等

escape(formObj.elements[id].value)

复选框和单选没有值,您正在寻找“已检查”,它将返回真或假。

【讨论】:

  • 所以我会把它放在 jquery 函数之后?所以我将创建一个新函数并以隐藏形式调用它?
  • 这是你有`if(optionAnswer == 'Yes')`的地方,你在寻找价值,我会寻找.checked。 stackoverflow.com/questions/1423777/…
  • proccessedCheck(optionId)if(optionId.checked)
猜你喜欢
  • 2022-01-10
  • 2018-03-06
  • 1970-01-01
  • 2016-03-31
  • 2013-01-24
  • 2018-01-31
  • 2013-02-22
  • 1970-01-01
  • 2012-04-05
相关资源
最近更新 更多