gtk-rs 相关问题


代理请求的 JAX RS 资源?

如何构建代理请求和响应的 JAX RS 资源? -- 也就是说,我可以转发请求和响应正文,可能会更改标头等次要细节 已尝试转发请求...


C:如何在 gtk 中制作上下文菜单

我如何使用 GTK 制作弹出菜单(我使用 C 和 GTK+)。我尝试使用 gtk_event_box 并将滚动窗口放入其中,然后将树视图小部件放入其中。它不起作用。我使用了找到的源代码


为什么 goGTK 小部件没有在 init() 函数中初始化? [已关闭]

我在 Windows 11 Pro 机器上使用 Go 1.21.4,并使用 GTK 3 绑定 Go。 简单示例代码: 包 GTKView 进口 ( “github.com/gotk3/gotk3/gtk” ) var mToolbar *gtk.Toolbar 变...


获取 gtk C 上表单输入的值

我有一个用C编写的gtk程序,我在模态中声明了一个表单,它在单击按钮后显示,我想从表单中获取输入的信息: 表格声明: 无效


有没有办法在 GTK 窗口中设置 TextView 小部件的尺寸,该窗口已经包含一些使用固定容器的其他小部件?

我正在编写一个 GTK-3 应用程序,其中有一些按钮和一个 TreeView 模型。我已使用固定容器将所有这些小部件添加到主 GTK 窗口中。现在我想要一个固定的门廊...


Go 中何时/如何调用和使用 init()?

在Win 11 Pro机器上使用Go 1.21.4并为Go绑定GTK 3。 对 Go 中何时/如何调用和使用 init() 函数感到困惑。 简单示例代码: 包 GTKView 进口 ( “github...


GoLang 中何时/如何调用和使用 init()?

在Win 11 Pro机器上使用Go 1.21.4并为Go绑定GTK 3。 对 Go 中何时/如何调用和使用 init() 函数感到困惑。 简单示例代码: 包 GTKView 进口 ( “github...


GTK模态表单输入验证问题

我正在开发一个 GTK4 应用程序,使用 Glade 进行 UI 设计。我面临的主要问题是,当尝试验证以模态形式输入的输入值时,保存这些输入的变量 ap...


GTK+ / C:错误:“gtk_entry_get_text:通过“g_signal_connect”将结构传递给函数时断言“GTK_IS_ENTRY(条目)”失败”

我正在创建一个计算器,当在一行中查找“x”时,应该询问“x”的值。我正在创建一个包含“条目”和两个按钮的附加窗口......


GTK fprint(%e) 用逗号而不是点书写的浮点数

因此,我正在创建一个小型太阳系模拟,并用 C 语言完成微积分。计算完成后,我将它们放入一个 json 文件中,该文件由网页读取。 我创建了一个函数来保存...


如何使用javascript forloop在点击时获取html中data-id的值并返回值

这是我的html {% if t_ques %} 今天 {% 表示 t_... 中的项目 这是我的html <ul class="conversations"> {% if t_ques %} <li class="grouping">Today</li> {% for item in t_ques %} <li class="active"> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if y_ques %} <li class="grouping">Yesterday</li> {% for item in y_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if s_ques %} <li class="grouping">Previous 7 days</li> {% for item in s_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} {% if more_s_ques %} <li class="grouping">Previous 30 days</li> {% for item in more_s_ques %} <li> <a id="convers" class="conversation-button text-[#E8F5FC] my-2" href="{% url 'assistant:continuechat' item.pk %}" data-pk="{{item.pk}}"> <i class="fa fa-message fa-regular"></i> {{item.title| truncatewords:04 }} </a> <div class="fade"></div> <div class="edit-buttons"> <button><i class="fa fa-edit"></i></button> <button class="trash" data-id = "{{item.pk}}"><i class="fa fa-trash"></i></button> </div> </li> {% endfor %} {% endif %} </ul> </div> 我一直在尝试使用 JavaScript 单击时获取任何 data-pk 的值,但似乎无法实现。这一直说 currentTarget 未定义,当我用 target 替换它时,它说同样的事情。然后,如果我将其替换为 document.querySelector("#convers"),它只会给出第一个值,无论单击哪个 这是我的 JavaScript const conversationButtons = document.querySelectorAll("#convers"); conversationButtons.forEach(button => { button.addEventListener("click", getId); }); function getId(e){ var idValue = e.currentTarget.getAttribute('data-pk'); console.log(idValue); //output corresponding target-id if(!chat_id){ url = `/chat-previous/${idValue}/` }else{ url = 'initiate-chat/' } return url; } $.ajax({ type: 'POST', url: getId(), data: { message: usermsg, chatId: chat_id, // itemId: item_id, csrfmiddlewaretoken: $('input[name=csrfmiddlewaretoken]').val(), action: 'post' }, success: function(json){ const res = json['chats'] setTimeout(() => { hideTyping(); body.appendChild(mgses(res, "assistant")); scrollToBottomOfResults(); }, 1000); console.log(json) }, error: function(rs, e){ setTimeout(() => { hideTyping(); body.appendChild(setBotResponse("bot")); scrollToBottomOfResults(); }, 600); console.log(rs.error); }, }); 我使用了其他方法,例如 const getId = () => { console.log(document.querySelector(".conversation-button").getAttribute('data-pk')) if(!chat_id){ url = `/chat-previous/${document.querySelector(".conversation-button").getAttribute('data-pk')}/` }else{ url = 'initiate-chat/' } return url; } conversationButtons.forEach(button => { button.addEventListener("click", getId); console.log(button.getAttribute('data-pk')); }); 仍然无法得到我真正想要的。有什么方法可以实现这个目标吗? 委托并使用按钮的类 document.querySelector('.conversations').addEventListener('click', (e) => { let tgt = e.target.closest('.conversation-button'); if (!tgt) return; const idValue = tgt.dataset.pk; console.log(idValue); //output corresponding target-id return chat_id ? 'initiate-chat/' : `/chat-previous/${idValue}/` }) 您做出了多个错误的假设,第一个是您不能有多个具有相同 id 的元素,这将导致您描述的确切行为“它需要第一次出现的 id” 第二件事是你可能想在点击时发出ajax请求,但你构建代码的方式并不能做到这一点。 要解决这些问题,请生成如下 html button.conversation-button button.conversation-button button.conversation-button 然后向所有具有 .conversation-button 类的元素添加一个事件侦听器,并将您的 ajax 调用包装到一个函数中,主要是您已经拥有的函数。 const conversationButtons = document.querySelectorAll(".conversation-button"); conversationButtons.forEach(button => { button.addEventListener("click", doStuff); }); ... function doStuff(e) { $.ajax( ... url: getId(e) ... } function getId(e) { let idValue = e.currentTarget.getAttribute('data-pk'); let url = ...; ... return url; // } 只是一些伪代码让你得到一个想法,祝你好运:)


© www.soinside.com 2019 - 2024. All rights reserved.