javascript html-react-parser不会解析select标记上的onChange函数

sczxawaw  于 2023-02-02  发布在  Java
关注(0)|答案(1)|浏览(170)

我尝试在一个循环中动态创建多个选择唐斯。当只有纯html时,html-react-parser工作正常。但是,当我向select标记添加onChange函数时,它不能正确解析该部分。实际上,它似乎忽略了它。

let selectOptions = "<th>Details</th>";
 for(var j=0;j<envsToCommitsHolder.length;j++){
        selectOptions += "<th><select onChange={(event) => {handleOptionSelection(event.target.selectedOptions)}} id="+realRepoName[j+1]+"><option>"+realRepoName[j+1]+"</option>";       
        for(var h=0;h<envsToCommitsHolder[j].val.length;h++){
          console.log(realRepoName[j+1]);
          console.log(envsToCommitsHolder[j].val[h]);    
          //var value = envsToCommitsHolder[j].val[h];      
          selectOptions += "<option value="+h+">"+envsToCommitsHolder[j].val[h]+"</option>";          
        }
        selectOptions += "</select></th>";      
      }     
      return parse(selectOptions);

请看附件中的图片,看看它是如何被呈现的。它把javascript完全放在select标签之外。我应该用其他的方法来做吗?我已经附上了带有onChange的select是如何在浏览器-〉problematic part上呈现的图片。我还看到有一个“dangerouslySetInnerHTML”来解析字符串并从中呈现html,但是我不知道如何使用它,或者它在这种情况下是否有用。任何帮助都将非常感谢。我被这个卡住了。

vjhs03f7

vjhs03f71#

我已经创建了一个沙箱来动态呈现选择选项,您可以自定义呈现,https://codesandbox.io/s/react-typescript-forked-8psy13?file=/src/App.tsx
React基本知识:useState,useEffect如果你有问题,可以在这里问我

相关问题