带有 jquery 的 javascript 函数

标签 javascript jquery

我有一个小功能,我正在尝试为她传递 2 个参数,但不起作用... 有什么想法/建议吗?

ajax 没有问题,我已经测试了这段没有参数的代码,直接放在函数上,但是调用她,不起作用,对糟糕的英语感到抱歉!!

function myfunction(var_data, var_field)
{
  $(function()
  {
    $.ajax
    ({
        url : "myscriptajax.php",
        type: "POST",
        data: var_data + $(this).val(),
        dataType:"json",
        success: function(data)
        {
          if(data.status)
          {
             $(var_field).val(data.somevar);
          }
        }
    })
 })
}
$("#medicocrm").change
  (function()
  {
       myfunction("crm=","#mediconome");
  })

//在此处编辑以获得最佳解释。 这有效:

$(function()
{
    $("#medicocrm").change
        (function()
        {
        $.ajax
        ({
            url : "abertura.ajax.php",
            type: "POST",
            data: "crm=" + $(this).val(),
            dataType:"json",
            success: function(data)
            {
                if(data.status)
                {
                    $("#mediconome").val(data.nome);
                }
            }       
        })
        return false;
    })

$("#participantematricula").change
    (function()
    {
        $.ajax
        ({
            url : "abertura.ajax.php",
            type: "POST",
            data: "matricula=" + $(this).val(),
            dataType:"json",
            success: function(data)
            {
                if(data.status)
                {
                    $("#participantenome").val(data.nome);
                }
            }
        })
        return false;
    })

\我用第一个答案试过了...

那行不通了:

function verifica(dados,campoid,camponome){
    $.ajax({
        url : "abertura.ajax.php",
        type: "POST",
        data: dados + campoid,
        dataType:"json",
        success: function(data){
            if(data.status){
                $(camponome).val(data.nome);
            }
        }
    });
    return false;
};

$("#medicocrm").change(function(){
verifica("crm=",this.value,"#mediconome");
});

$("#participante_id").change(function(){
verifica("id=",this.value,"#participante_nome");
});

最佳答案

只需进行改造即可。

function myfunction(var_data, var_field, elementValue){
    $.ajax({
        url : "myscriptajax.php",
        type: "POST",
        data: var_data + elementValue,
        dataType:"json",
        success: function(data){
          if(data.status){
             $(var_field).val(data.somevar);
          }
        }
    });
};

$("#medicocrm").change(function() {
       myfunction("crm=","#mediconome", this.value);
});

这里我们删除了 DOMContentLoaded 监听器并将元素的值传递给函数..

您可以使用 $(this).val(); 代替 this.value 任何漂浮的东西。

关于带有 jquery 的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19368305/

相关文章:

javascript - D3.js 气泡图在 AngularJS 中不出现

javascript - 获取插入的数据而不提交

javascript - Webpack 导入和捆绑模块的正确方法

javascript - 删除计时器上动态添加的 div

javascript - JQuery 日期选择器无法正常工作

jquery - 输入验证 - 样式

javascript - jQuery .has() inside click() 函数显示错误结果

javascript - 关于使用 Cloud KMS 进行签名验证的问题

javascript - 让我的搜索框容易受到 XSS 攻击

jquery - 为什么 jQuery 不接受这个字符串?