javascript 相关问题

JavaScript(不要与Java混淆)是一种高级,动态,多范式,面向对象,基于原型的弱类型语言,用于客户端和服务器端脚本。它的主要用途是渲染和操作网页。使用此标记可以了解有关ECMAScript及其各种方言/实现的问题(不包括ActionScript和Google-Apps-Script)。

使用 laravel 和 php 自动翻译

我对 Laravel 比较陌生,我的经理要求我自动将我们的网站从英语翻译成阿拉伯语,反之亦然,同时确保内容的本地化...

回答 1 投票 0

这个挑战涉及状态或道具或 React 中的任何名称

从“react”导入React 导出默认函数 App() { const [消息,setMessages] = React.useState([]) 函数混乱计数(){ setMessages(prevMessage => prevMessage.

回答 1 投票 0

动态调整大小时如何使用 Sanity 图像热点

tl;dr 我想将 Sanity 热点保留在屏幕上 100vw 和 100dvh 部分,无论用户如何调整它的大小。 目标 在我客户的网站上,我有一个用于英雄背景的图像滑块

回答 1 投票 0

如何强制更新nextjs React组件?

版本 Next.js:14.0.3 反应:18.0.2 // TestClientComponent.tsx “使用客户端”; 从“@interface/resident.types”导入{IResident}; 从“@mo...

回答 1 投票 0

如何在 Angular 17 中使用 fs 模块(文件系统)?

我正在使用一个pdf符号库,它使用fs来读取pdf文件。 不幸的是我不能使用它,因为 Angular 应用程序通常在浏览器环境中运行,而 fs 模块(文件系统)是......

回答 1 投票 0

Reactjs:页面在按钮的“onClick”句柄上刷新?

我的 render() 中有以下块(这是一个 Bootstrap 按钮:https://react-bootstrap.github.io/components.html#buttons-options): 我的 render() 中有以下块(这是一个 Bootstrap 按钮:https://react-bootstrap.github.io/components.html#buttons-options): <Button type="simpleQuery" onClick={this.handleEntailmentRequest.bind(this)}> Query </Button> 以及以下功能: handleEntailmentRequest() { console.log("handle request "); } 每当我单击按钮时,我都可以看到“处理请求”问题出现在控制台日志中,但突然消失了。我的理解是有些东西导致页面刷新。有什么意见我哪里错了吗? 默认按钮操作是提交表单。 如果您不需要 - 您需要防止这种情况: handleEntailmentRequest(e) { e.preventDefault(); console.log("handle request "); } 参考资料: MDN - Event.preventDefault() 您可以按照 zerkms 的建议阻止默认行为或 只需在按钮标签中添加 type="button" 即可。 例如:this.showSomething('all')}>全部 页面重新加载问题的完整解决方案是: <Button type="simpleQuery" onClick={(e) => {this.handleEntailmentRequest(e)}}> Query </Button> handleEntailmentRequest(e){ e.preventDefault(); //do something... } 在React中添加属性type="button"后解决了我的问题。 是的!那确实有效! 如果你的react-app意外刷新,你应该传递(e)作为事件参数,然后在函数体中使用e.preventDefault(),这将防止发生onClick事件的默认行为。 你也可以尝试这个: import React from 'react'; function App() { function refreshPage() { window.location.reload(false); } return ( <div> <button onClick={refreshPage}>Click to reload!</button> </div> ); } export default App; 我不知道这有什么帮助。但我将 type="button" 添加到我正在使用的按钮中,我的问题得到了解决。我认为其他按钮元素不会发生这种情况。我使用了锚标记,这就是我遇到这个问题的原因。我按照以下方式使用锚标记,我的问题就消失了。 <a type="button" onClick={}></a> 我们可以使用 添加所有者 而不是锚标签它将解决您的问题

回答 8 投票 0

我的 JS 代码正在运行,但部分代码在页脚中可见。我该如何解决这个问题?

我对 JS 很菜鸟,但我正在尽力学习。我添加了一些 JS 行以在 Wordpress 表单中添加功能。这是代码: 我对 JS 很菜鸟,但我正在尽力学习。我添加了一些 JS 行以在 Wordpress 表单中添加功能。这是代码: <?php if ( ! defined( 'ABSPATH' ) ) { exit; } elseif ( defined( 'WP_CLI' ) && WP_CLI ) { return; } add_action( 'wp_footer', function(){ global $post; if( ! $post instanceof WP_Post || ! has_shortcode( $post->post_content, 'forminator_form' ) ) { return; } ?> <style> .forminator-ui .wpmudev-option-limit .wpmudev-disabled{ color:#ddd!important; } .forminator-ui .wpmudev-option-limit .wpmudev-disabled span[aria-hidden]{ border-color: #ddd!important; background-color: #ddd!important; } </style> <script type="text/javascript"> ($=>{ const _forminator_restrict_multiple_fields = { form_ids: [10097], limit: { 'checkbox-1': 1, 'checkbox-2': 1, 'checkbox-3': 1, 'checkbox-4': 1, 'checkbox-5': 1, 'checkbox-6': 1, 'checkbox-7': 1, 'checkbox-8': 1, 'checkbox-9': 1, 'checkbox-10': 1, 'checkbox-11': 8, 'checkbox-12': 8, }, run : function( e, form_id ) { if( _forminator_restrict_multiple_fields.form_ids.indexOf( form_id ) === -1 ){ return; } let _form = $( "#forminator-module-" + form_id ); _form.find('.wpmudev-option-limit').each(function(){ let _field = $(this), checkbox_fields = _field.find( ":checkbox" ); if( checkbox_fields.length ){ checkbox_fields.on('change', function (e) { let _parent = $(this).closest('.wpmudev-option-limit'), _parent_id = _parent.attr('id'), _selected = _parent.find(':checkbox:checked').length; if( _parent_id in _forminator_restrict_multiple_fields.limit && _selected >= _forminator_restrict_multiple_fields.limit[ _parent_id ]){ // save latest value. _field.data('latest_value', $(this).val() ); // disable other options. _parent.find(':checkbox:not(:checked)').each(function(){ $(this).prop('disabled', true).parent().addClass('wpmudev-disabled'); }); }else{ _parent.find(':checkbox:disabled').each(function(){ $(this).prop('disabled', false).parent().removeClass('wpmudev-disabled'); }); _field.removeData('latest_value'); } }); } // auto remove previous value when riched the limit. $(this).on('click', '.wpmudev-disabled', function(){ let _latest_value = _field.data('latest_value') ; if( _latest_value ){ let _previous_opt = $(this).closest('.wpmudev-option-limit').find('input[value="'+ _latest_value +'"'); if( _previous_opt.length ){ _previous_opt.trigger('click'); $(this).removeClass('wpmudev-disabled').find('input:disabled').removeAttr('disabled'); } } }) }); } } $(document).ready(function(){ $.each(_forminator_restrict_multiple_fields.form_ids, function(i, _form_id){ _forminator_restrict_multiple_fields.run(this,_form_id); }); $(document).on( 'response.success.load.forminator', _forminator_restrict_multiple_fields.run ); }); })(jQuery); </script> add_action( 'wp_footer', 'wpmudev_limit_validation_checkbox', 9999 ); function wpmudev_limit_validation_checkbox() { global $post; if ( is_a( $post, 'WP_Post' ) && !has_shortcode( $post->post_content, 'forminator_form' ) ) { return; } ?> <script type="text/javascript"> jQuery( document ).ready( function($){ setTimeout(function() { $('.forminator-custom-form').trigger('after.load.forminator'); },100); $(document).on('after.load.forminator', function(event, form_id) { $.validator.addMethod("min_selection", function (value, element) { let parent = $(element).closest('.wpmudev-checkbox-limit'); let selected = parent.find(':checkbox:checked').length; if ( selected == 8 ) { // Exact selection limit here. return true; } return false; },"Please select 8 options."); $( ".wpmudev-checkbox-limit input" ).attr( "min_selection", "min_selection" ); }); }); </script> <?php }, 999 ); 它运行良好,但部分代码在网站页脚下方可见,我真的不知道发生了什么。以下是可见的代码行: add_action( 'wp_footer', 'wpmudev_limit_validation_checkbox', 9999 ); function wpmudev_limit_validation_checkbox() { global $post; if ( is_a( $post, 'WP_Post' ) && !has_shortcode( $post->post_content, 'forminator_form' ) ) { return; } ?> 我做错了什么?怎么解决? 谢谢! 您面临的问题似乎是由于代码直接回显到页脚中,这导致它在前端可见。要解决此问题,您应该将 PHP 代码包装在输出缓冲区中,然后返回输出。 add_action( 'wp_footer', 'wpmudev_limit_validation_checkbox', 9999 ); function wpmudev_limit_validation_checkbox() { ob_start(); // Start output buffering global $post; if ( is_a( $post, 'WP_Post' ) && !has_shortcode( $post->post_content, 'forminator_form' ) ) { return; } ?> <script type="text/javascript"> jQuery( document ).ready( function($){ setTimeout(function() { $('.forminator-custom-form').trigger('after.load.forminator'); },100); $(document).on('after.load.forminator', function(event, form_id) { $.validator.addMethod("min_selection", function (value, element) { let parent = $(element).closest('.wpmudev-checkbox-limit'); let selected = parent.find(':checkbox:checked').length; if ( selected == 8 ) { // Exact selection limit here. return true; } return false; },"Please select 8 options."); $( ".wpmudev-checkbox-limit input" ).attr( "min_selection", "min_selection" ); }); }); </script> <?php // Return the buffered content echo ob_get_clean(); }

回答 1 投票 0

如何调用控制器内的函数?

我已经为我的网络应用程序构建了一个产品编辑页面,其中包含标准输入字段和按钮。此外,我还实现了图像的拖放功能。然而,我遇到了

回答 1 投票 0

如果 URL 不存在,为什么我会得到“/auth/auth/”的嵌套 URL?

所以我正在遵循一个教程,但不知何故陷入了一个问题,其中如果 URL 不存在于 paths.ts 中。它重定向到嵌套的 /auth/auth/...../login/ 而不是重定向到本地...

回答 1 投票 0

在 Obsidian QuickAdd 插件用户脚本中正确访问 Templater 对象

我正在创建一个用户脚本,用于 Obsidian 中的 QuickAdd 插件宏。该宏只有一个步骤,只需运行用户脚本(使用 CommonJS 标准的 JavaScript)。步骤之一...

回答 1 投票 0

PostgreSQL 服务器在没有任何命令的情况下自动关闭[关闭]

我的 PostgreSQL 服务器遇到问题,在没有发出任何显式命令的情况下它会自动关闭。这个问题已经发生过多次,我不确定......

回答 1 投票 0

TypeORM:尝试按 loadRelationCountAndMap 之后创建的字段排序时,无法读取未定义的属性“databaseName”

我正在尝试计算帖子的观看次数,然后按观看次数对帖子进行排序。 这是我尝试计算的代码部分。 Alias.views 是一个对象数组。据我了解,alias.viewsCount应该...

回答 1 投票 0

在 Next.js 14 中应用全局样式

我在使用新的 Next.js 实现 style jsx 全局属性时遇到问题。在之前的文件中,您需要将其添加到 _app.js 文件中,但由于它不再存在,我想...

回答 1 投票 0

显示复选框中的按钮

我有一个包含不同健身练习的数据库,我正在尝试为每个练习制作一个排行榜,我想要一个类似于复选框表单的东西,它可以从我的数据库中获取所有练习并将它们添加为...

回答 1 投票 0

在 ubuntu 上安装 node-gyp 时出错

npm http 200 https://registry.npmjs.org/weak/-/weak-0.2.2.tgz npm http GET https://registry.npmjs.org/bindings npm http 304 https://registry.npmjs.org/bindings >[email protected] 安装node_modules...

回答 13 投票 0

如何检查@if模板流语法中的值0

我在 Angular 模板流语法中遇到 @if 问题。 RxJs Observable 中提供了一个值。因此,异步管道会有所帮助,并将值分配给变量。 @if (当前页码$ |...

回答 1 投票 0

当选择更改时阻止多个选择滚动到顶部

当我选择一个选项时,如何禁用滚动到所选项目的顶部?很简单,用js实现多选,不用clrt+C就可以用多选,代码下来。 window.onmoused...

回答 2 投票 0

使用jquery ajax在单个提交中提交2个表单数据

我想在单个提交按钮中提交 2 个数据。 我想在单个提交按钮中提交 2 个数据。 <form id="form1"> <input type="text" name="name"> <input type="submit" value="Submit"> </form> <form id="form2"> <input type="email" name="email"> <input type="submit" value="Submit"> </form> 我用什么形式表示: $.ajax({ url: '/submit_form_data.php', type: 'POST', data: $("#form1").serialize();, success: function(response) { // Handle the response from the server. } }); 请帮助我,以便我可以在signle ajax sunmit中传递两个表单数据。 您可以连接两个表单数据,如下所示: $.ajax({ url: '/submit_form_data.php', type: 'POST', data: $("#form1").serialize() + '&' + $("#form2").serialize() , success: function(response) { // Handle the response from the server. } }); 我得到的工作解决方案为: $(document).ready(function() { // Create a FormData object for each form. var formData1 = new FormData($('#form1')[0]); var formData2 = new FormData($('#form2')[0]); // Append the FormData objects to a single object. var formData = new FormData(); formData.append('formData1', formData1); formData.append('formData2', formData2); // Make an Ajax request to the server, passing in the FormData object as the data parameter. $.ajax({ url: '/submit_form_data.php', type: 'POST', data: formData, processData: false, // Don't process the data as a query string. contentType: false, // Don't set the Content-Type header. success: function(response) { // Handle the response from the server. } }); });

回答 2 投票 0

如何使用 Next.js 防止 IOS 设备点击 gif

我实际上想循环显示视频,这也导致了视频无法在 iPhone 中自动启动的问题,所以我尝试仅在 iPhone 设备上使用 gif。但当有人点击时,gif 也会出现问题...

回答 1 投票 0

Highcharts X 轴格式问题

传入数据如下,还添加了 highchart 渲染代码和解析指标代码。请检查所附图像,该图像显示一些值之后的 x 轴变得混乱。我们有一个...

回答 1 投票 0

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