单击 p 标签旁边的按钮时获取 p 标签的内部文本(无 Jquery)
我有几个盒子,每个盒子都包含按钮和一个 元素,其内部文本是由 API 中的数据创建的。我在每个框上放置了一个 onclick(包裹 的 ) 我有几个盒子,每个盒子都包含按钮和一个 <p> 元素,其内部文本是由 API 中的数据创建的。我在每个框上放置了一个 onclick(包裹 <div> 元素和按钮的 <p>)。我希望每次单击该按钮时,位于该按钮旁边(位于同一 div 中)的 innerText 标签的 <p> 都会控制台日志。目前无法弄清楚,这就是我到目前为止所得到的: const containerShapes = document.getElementById("container-pock-shape") fetch("https://pokeapi.co/api/v2/pokemon-shape") .then(res => res.json()) .then(data => data.results.map(item => { return containerShapes.innerHTML += `<div class="shape-box" onclick="showName(event)"> <p>${item.name}</p> <button>Select</button> </div>` })) function showName(e) { console.log() } #container-pock-shape { display: flex; flex-wrap: wrap; } .shape-box { border: 2px solid red; display: flex; flex-direction: column; align-items: center; padding: 10px; width: 200px; } .shape-box p { background-color: grey; width: 100px; text-align: center; font-weight: 900; } <body> <div id="container-pock-shape"> </div> </body> 您可以使用最近的。当您需要 forEach 或正确使用地图时也不要使用地图 我还强烈建议授权(点击 div) const containerShapes = document.getElementById("container-pock-shape") fetch("https://pokeapi.co/api/v2/pokemon-shape") .then(res => res.json()) .then(data => containerShapes.innerHTML = data.results .map(({name}) => `<div class="shape-box"> <p>${name}</p> <button>Select</button> </div>`)); containerShapes.addEventListener("click", e => { const tgt = e.target.closest("button") if (tgt) console.log(tgt.closest("div.shape-box").querySelector("p").innerText) }) #container-pock-shape { display: flex; flex-wrap: wrap; } .shape-box { border: 2px solid red; display: flex; flex-direction: column; align-items: center; padding: 10px; width: 200px; } .shape-box p { background-color: grey; width: 100px; text-align: center; font-weight: 900; } <body> <div id="container-pock-shape"></div> </body> 要获取名称,由于事件位于整个 div 上,因此您需要使用 querySelector 并找到内部 <p> 元素并获取其文本。 const containerShapes = document.getElementById("container-pock-shape") fetch("https://pokeapi.co/api/v2/pokemon-shape") .then(res => res.json()) .then(data => data.results.map(item => containerShapes.innerHTML += `<div class="shape-box" onclick="showName(this)"> <p>${item.name}</p> <button>Select</button> </div>` )) function showName(box) { const name = box.querySelector('p').textContent; console.log(name); } #container-pock-shape { display: flex; flex-wrap: wrap; } .shape-box { border: 2px solid red; display: flex; flex-direction: column; align-items: center; padding: 10px; width: 200px; } .shape-box p { background-color: grey; width: 100px; text-align: center; font-weight: 900; } <body> <div id="container-pock-shape"></div> </body> 执行此操作的另一种方法是将单击事件仅添加到按钮,然后查找 closest 形状框,然后找到 <p>。 const containerShapes = document.getElementById("container-pock-shape") fetch("https://pokeapi.co/api/v2/pokemon-shape") .then(res => res.json()) .then(data => data.results.map(item => containerShapes.innerHTML += `<div class="shape-box"> <p>${item.name}</p> <button onclick="showName(this)">Select</button> </div>` )) function showName(button) { const name = button.closest('.shape-box').querySelector('p').textContent; console.log(name); } #container-pock-shape { display: flex; flex-wrap: wrap; } .shape-box { border: 2px solid red; display: flex; flex-direction: column; align-items: center; padding: 10px; width: 200px; } .shape-box p { background-color: grey; width: 100px; text-align: center; font-weight: 900; } <body> <div id="container-pock-shape"></div> </body> 嘿,我最近找到了解决此问题的简单方法(当然,如果您的文本不像按钮文本那样太长):您可以将内部文本作为元素的 id 提供。并且在事件处理程序中,您可以通过以下方式访问内部文本:这样:e.target.id希望这个解决方案可以帮助你:)
当我在 Jupyter 笔记本中有此 Python 代码时: df = pd.read_csv("data.csv",index_col=0) 打印(df.形状) read_csv 和 shape 为蓝色,“data.csv”为红色,0 ...
UIInputViewController 上未调用 SwiftUI 按钮
我正在使用 iOS 自定义键盘扩展。 SwiftUI 按钮显示正确,但从未被调用! 导入 SwiftUI 类 KeyboardViewController: UIInputViewController { 覆盖功能
branch 不是使用 yup 模式与 when 和 then 进行反应的函数
在使用 yup 进行反应时,我创建了这个模式 const RefereeFormSchema = Yup.object().shape({ name: Yup.string().required('姓名为必填项'), 移动端:Yup.string().matches(APP_CONFIG.REGEX_PHO...
作为 UITextView inputAccessoryView 的 SwiftUI 视图具有不正确的框架
我正在尝试通过 UIHostingController 将 SwiftUI 视图作为附件视图添加到 UITextView 中。以下是我的 UIInputView 配置 struct AccessoryView: View { /* SwiftUI 视图 */ } c...
图像的右侧是问题所在,我无法将边框做成像这样的波浪。 我希望它弯曲但不对称。 这是我使用的最接近的(https://css-generators.com/wavy-shape...
如何在不影响缩放(或距 MapCamera 视点的距离)的情况下更新 SwiftUI 地图的位置。所以想要总体想要 SwiftUI 地图位置由传入的 GPS co-
我是使用 swiftui 的 iOS 开发人员。 现在我有一个android项目,所以我开始学习jetpack compose。 但我有一个与 swiftui 状态不同的问题。 包 com.example.myapplicati...
Swift 编译器错误:“类型‘Watermark’不符合协议‘ViewModifier’”
我想添加一个 ViewModifier,如 Paul Hudson 的以下教程中所述 (https://www.hackingwithswift.com/books/ios-swiftui/custom-modifiers)。 我的视图修改器是: 导入 SwiftUI 结构
有谁知道是否有一个系统可以滚动到 SwiftUI 表中的一行? 我知道我可以使用 List/ScrollView/ScrollViewReader 组合,但我理想地寻找与 Ta 配合使用的东西...
我想在swiftUI按钮中实现这种渐变阴影。任何帮助或建议将不胜感激。我已经实现了渐变边框。预先感谢!
在 SwiftUI 中,如何从单个弯曲路径/线导出书法风格的形状? 我假设基本算法是: 复制路径。 翻译副本。 “合并&...
我正在尝试将颜色转换为 UIColor。不幸的是,当 SwiftUI 颜色是动态的(浅色和深色的值不同)时,创建的 UIColor 不是动态的。 这是一些代码示例来说明...
新的SwiftUI框架似乎没有提供内置的搜索栏组件。我应该使用 UISearchController 并以某种方式包装它,还是应该使用简单的文本字段并更新数据
我正在尝试优化我的 SwiftUI 应用程序。我有一个奇怪的行为,ViewModel 在其视图中存储为 @StateObject。为了理解这个问题,我做了一个小项目来重现它。 内容视图
我有一个包含在 UIHostingController 中的 SwiftUI 视图,并在 iPad 上以 formSheet 的形式呈现。我有一个完成按钮可以关闭,并且有一个回调闭包从父视图控制器传递到 p...
我试图更好地理解 SwiftUI 在使用可观察对象作为模型数据时如何重绘。 听一个例子。我的 InputView 中有 arc4random_uniform,这样我就可以看到重绘何时发生......
UIBarButtonItem 击中区域(SwiftUI,但不仅如此)
所以,像许多其他人一样,我注意到使用 SwiftUI 添加为 ToolbarItem 的 Button 的点击区域比 UIKit 中的 UIBarButtonItem 小得多。或者说我是这么想的。 下面是一个简单的代码来...
在 SwiftUI 中显示带有 URL 的 KFImage 时遇到问题 - Kingfisher
我目前正在开发一个 SwiftUI 项目并使用 Kingfisher 库来显示图像。但是,我在使用带有 URL 的 KFImage 视图显示图像时遇到问题。 这是一个简单的...
当 UIKit > SwiftUI > UIKit 时不显示导航栏项目
从 SwiftUI 视图推送到 UIKit 时,导航栏项目不存在或未添加。 我在故事板中添加了一项,在代码中添加了一项,但都没有显示。 这可能是一个错误...
我有一个动态 SwiftUI 列表,它使用状态枚举进行填充。然后它循环遍历我的数据字典,寻找状态匹配来显示数据。所有这一切都很完美。什么...
SwiftUI PhotosPicker 如何在选择完成后清除所选项目列表
我在我的应用程序中使用 SwiftUI 的 PhotosPicker,并试图找到一种方法来确保用户下次打开 PhotosPicker 时,所选元素的数量为零。 简单来说,野兔就是...
结构ContentView:视图{ var body: 一些视图 { 导航视图{ ZStack { 文本(“内容”) .工具栏{
如何获取 SwiftUI Color 的浅色或深色模式版本?
如何在 SwiftUI 中创建一个专门包含暗模式颜色的局部变量。 我试图避免将每个视图的配色方案指定为深色以获得深色模式颜色。 例如在
如何将点击手势添加到串联 SwiftUI 文本视图的一部分?
我正在开发一个 SwiftUI 视图,我需要连接两个文本视图,并仅使连接文本的一部分可点击。这是一个简化的示例。 文本(“你好,”)+ 文本(“
我正在尝试创建一个可重用的组件,用于将 Swift 集合 OrderedSet 呈现到带有删除、移动和添加处理程序的 SwiftUI 列表中。 我希望能够传递任何
如何使用SwiftUI @ViewBuilder创建需要参数的视图?
在关于如何将通用 SwiftUI 视图添加到另一个视图的问题的答案中,我了解到这可以使用 @ViewBuilder 来完成。 虽然这对于我的大多数用例都适用,但我现在遇到了......
如何让 SwiftUI Preview 只构建主目标而没有测试目标?
我只想运行我的代码的 SwiftUI 预览,但是,它也在构建我的单元测试。它们有一些错误,所以我不希望构建它们。它们通常不是在运行我的 Xc 时构建的...
在 macOS 应用程序的 SwiftUI 侧边栏中实现重命名和重新排序
我正在仅使用 SwiftUI 开发 macOS 应用程序。我正在尝试实现一个类似于 Finder 或 Notes 等 Apple 应用程序中的侧边栏,其中可以重新排列和重命名项目。 在我的侧边栏中...
swiftUI picker(Picker 中内容的填充不起作用)
无论如何都可以在选择器中“填充”内容。如Picker中的“Text”.padding() 选择器(选择:$picked){ ForEach(0...10, id: \...
我有一个像这样的简单视图: 结构 TestView: 查看 { var body: 一些视图 { 按钮(操作:{}){ 文本(“按钮”) 。填充() ...
将 Objective-C rootViewController 更改为 SwiftUI
我有一个使用 React Native 构建的项目,对于某些功能,我使用以下代码将 rootViewController 从 React Native 更改为 Storyboard: - (无效) goToNativeView { UIViewControl...
对于 Carousel 自定义组件,我们使用具有以下修饰符的 TabView: .tabViewStyle(.page(indexDisplayMode: .never)) 一切都工作得很好,除了在旋转期间...
我正在尝试让我的 swiftUI 视图动态调整大小。 我发现执行此操作的方法是使用如下所示的环境信息: @Environment(\.horizontalSizeClass) var sizeClass 然而,它并不
当我删除具有交替 .listRowBackground 颜色的行时,SwiftUI / iOS 应用程序崩溃
我为列表设置了交替颜色: .listRowBackground((self.restaurants.firstIndex(of:restaurant)! % 2 == 0) ? Color.myLightGray: Color.white),但是当我删除一行时,程序崩溃...
我的布局如下面的屏幕截图所示。 我的代码如下。 我的布局如下面的屏幕截图所示。 我的代码如下。 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" > <LinearLayout android:id="@+id/ll_main" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="@dimen/margin_smallxx" android:layout_marginTop="@dimen/margin_normalxx" android:layout_marginEnd="@dimen/margin_smallxx" android:orientation="vertical"> ....... 现在我想为盒子添加阴影,如下所示。 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" > <TextView style="@style/shadowStyle" android:elevation="20dp" android:layout_alignTop="@id/ll_main" android:layout_alignBottom="@id/ll_main" android:layout_alignStart="@id/ll_main" android:layout_alignEnd="@id/ll_main" /> <LinearLayout android:id="@+id/ll_main" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="@dimen/margin_smallxx" android:layout_marginTop="@dimen/margin_normalxx" android:layout_marginEnd="@dimen/margin_smallxx" android:orientation="vertical"> shadowStyle如下。 <style name="shadowStyle" parent="@android:style/TextAppearance"> <item name="android:layout_width">match_parent</item> <item name="android:layout_height">match_parent</item> <item name="android:text"></item> <item name="android:background">@drawable/myrect</item> <item name="android:outlineSpotShadowColor">@color/shadow_color</item> </style> 和myrect.xml形状如下。 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#FFFFFF" /> <corners android:radius="20dp" /> </shape> 当我添加此内容时,下面的所有视图都会被隐藏,这很奇怪。 应用程序截图如下。 我将 shadow_color 表示为 #FF00FF 仅用于测试目的。 知道如何使其正确吗?我是不是错过了什么... 以下是我根据mãĴď评论所做的事情 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:background="@color/white"> <androidx.cardview.widget.CardView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="@dimen/margin_smallxx" android:layout_marginTop="@dimen/margin_normalxx" android:layout_marginEnd="@dimen/margin_smallxx" app:cardCornerRadius="10dp" app:cardElevation="20dp" android:outlineSpotShadowColor="@color/shadow_color" > <LinearLayout android:id="@+id/ll_main" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> ........ </LinearLayout> </CardView> </RelativeLayout> 这意味着我们将拥有卡片视图并将整个布局放入其中......
SwiftUI 中 NavigationSplitView 的编程式导航
我有一个最初使用 NavigationSplitView 为 iPad 设计的应用程序。在手机上,我希望它在某些情况下自动导航到详细视图。我找到了 isActive 属性...
为什么在 SwiftUI 中的 TextField 绑定上调用 didSet 两次?
我有一个非常基本的视图,仅显示一个文本字段: 看法 结构ContentView:视图{ @StateObject var viewModel = ViewModel() var body: 一些视图 { TextField("输入一个...
SwiftUI - NavigationLink(值:)和 navigationDestination 不起作用
我有一个名为 Diem 的 SwiftData 模型,其中包含变量 id、名称和日期。我想从 HomeView 导航到 DiemDetail,但 NavigationLink 不起作用。 Xcode 没有显示任何错误。 结构 HomeView:...
如何捕捉 SwiftUI ScrollView 中的每隔一个内容项?
背景 在 WWDC 2023 上,Apple 推出了新的 ScrollViews API,让我们可以轻松地将视图对齐到位。以下代码示例将矩形捕捉到位置...
scroll与scrollTargetBehavior冲突?
我尝试在 SwiftUI 中复制 Snapchat 相机滤镜滚动。 当我手动滚动时,由于新的 iOS 17 滚动 API,它运行良好,它以每个圆圈为中心。但点击后它不起作用...
如何让用户在 SwiftUI 文本字段中仅使用数字输入货币,同时保留 $ 和 .?
现在,我有以下内容: 私有变量currencyFormatter:NumberFormatter = { 让 f = NumberFormatter() // 不允许出现货币符号、额外数字等 f.isLenient = true f.
我的视图由 3 张图像组成。 Image1 是背景图像(蛋糕)。 Image2 是紫色数字 6,绘制在 Image1 之上。 Image3 是红色数字 1。 我需要一个函数来配合...
我正在尝试在VisionOS中创建一个圆形按钮,总是有一个椭圆形背景,在iOS版本中没有出现。我正在使用 SwiftUI 和 Xcode 15.2: 按钮(操作:{}){ 图片(系统...
每当我在列表滚动一点后点击列表中的导航链接时,列表似乎会暂时向下移动。请观看以下视频(带有“慢动画...
文本输入时 SwiftUI 100% CPU + 1 MB 内存
TLDR:当在表单中聚焦 TextField 或 TextEditor 时,每次击键都会占用 100% CPU 长达一秒(然后返回到零),并且总内存会增加近 1 MB(并且不会出现...
在 SwiftUI AlamoFire 中将图像上传到服务器之前,如何调整图像大小以使其最大宽度为 1280px,同时保持宽高比。 func resizeImage(图像: UIImage, maxWidth: CGFloat) ->
如何在 SwiftUI 中更新 ObservableObject 数组中的状态
我有一个 ObservableObjects 数组。我有一个按钮,可以增加列表中每个对象的值属性。 我的问题是,当已发布的属性更改时,UI 不会更新...
如何在 @Observable 属性更改时执行 SwiftUI 动画
我在下面的代码片段中将正方形动画化为圆形。我的视图观察 isCircle 属性来确定是绘制圆形还是方形。 MyData#doSomethingExpective 方法是卑鄙的...