php - JQuery 帮助处理复选框及其值

标签 php javascript jquery

我对 javascript 和 JQuery 很陌生,但我设法让我的第一个 ajax 脚本几乎 100% 工作。也许今天是我的幸运日,我可以完成这件事。 :)

让我给你们提供每个文件的示例,以便你们知道什么是什么。我相信我上次尝试解决这个问题并没有成功,因为我混淆了这些文件。它们都是js并且具有完全相同的语法。

我有 2 个 javascript 文件。一种称为 ajax.js,具有以下语法。它调用 ajax.php。

$("#admEmpID").bind("change", function(e){
  $.getJSON("ajax.php?e=" + $("#admEmpID").val(),
        function(data)
        {
          $.each(data, function(i,item)
          {
            if (item.field == "admEmpStatus")
            {
              // ?? radio buttons
            }
            ............. etc




我的下一个文件是这个脚本,名为 admEmp.js。我认为这是用于我的表单验证。

$(function() {
  $('.error').hide();
  $('input.text-input').css({backgroundColor:"#FFFFFF"});
  $('input.text-input').focus(function(){
    $(this).css({backgroundColor:"#FFDDAA"});
  });
  $('input.text-input').blur(function(){
    $(this).css({backgroundColor:"#FFFFFF"});
  });

  $(".admEmpBtn").click(function() {
        // validate and process form
        // first hide any error messages
    $('.error').hide();

      var admEmpID = $("input#admEmpID").val();
    var admEmpStatus = $("input[name='admEmpStatus']:checked").val();

        $.ajax({
  type: "POST",...............etc.

我想做的是根据数据库结果切换我的复选框。如果数据库的结果 = 1,则应选中该复选框,否则应取消选中该复选框。

我现在拥有的这些脚本将从数据库中的值填充我的文本框,因此对于像我这样不知道 JQuery 及其内部工作原理的人来说,我很自然地假设这些复选框还将填充开/关值。也许我是不正确的。上次我在 SO 上发帖寻求帮助时,一个人提到我需要使用服务器端代码切换结果。这是正确的还是 JQuery 会为我做这件事?

除了需要显示其值的复选框之外,我还有单选按钮。顺便说一句,复选框没有分组;他们每个人都有自己的值(value)。

感谢你们提供的任何帮助。

<小时/>

好的。 “dz”说我应该把 ('#admCustRptDly').attr('checked', true);进入我的脚本,看看是否允许我看到选中的属性,但事实并非如此。数据库中该复选框的值为 0,因此我应该看不到复选标记。我将其放入 ajax.js 文件中。这是现在的样子。

    else if (item.field == "admCustRptDly" && item.value == "1")
    {
    //  $("checkbox#admCustRptDly").attr("checked", "checked");
      $('#admCustRptDly').attr('checked', true);
    }
<小时/>

这就是我所做的,让我觉得我可能取得了一些进展。我在条件内放置了警报,但没有收到警报。如果我去找一个将 db 值设置为 1 的客户,那么我确实会收到警报。这比我之前得到的要多。但同样,即使数据库中的数据 = '0',我仍然看到复选标记

最佳答案

复选框的行为与其他输入字段略有不同。当你有 <input type="text" name="field1" value="foo" />例如,文本字段会自动填充“foo”。

但是,如果您有 <input type="checkbox" name="field2" value="1" /> ,该复选框没有任何可填充的内容。这是因为复选框有一个特殊的“checked”属性,该属性决定默认情况下是否选中它。因此,填充文本框的脚本很可能为复选框输入了正确的值,但没有设置选中的属性。

要使用 jQuery 执行此操作,您可以执行 $('#checkboxid').attr('checked', true);

关于php - JQuery 帮助处理复选框及其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/712701/

相关文章:

javascript - TypeError : jQuery. 颜色框未定义

php - 使用 XMLReader 读取大于 1GB 的文件时出现问题

php - PHP 中的 strrpos 改为查找最后一个字符位置?

javascript - 如何在Leaflet ImageOverlay中使用base64字符串而不是URL

javascript - 通过嵌套 JSON 对象创建 html 元素

javascript - 每次单击按钮即可创建新的随机句子

javascript - 如何在更改时附加 url

PHP Preg Replace - 用空格匹配字符串 - WordPress

javascript - Web Audio - 如何立即更改所有声音的播放速率?

javascript - 如何在React Native中解析html